LINUX.ORG.RU

Совет по выбору библиотеки/фреймворка для web

 ,


0

4

Привет, форум.

Я (не разработчик) хочу сделать web приложение, которое будет позволять работать с базой sqlite или другой. В базе будут в 90% случаев простые текстовые записи. На сайте будет поиск + возможность добавления записей и изменения существующих.

Хочется сделать это без всяких *GPT/AI, по-старинке, напрягая в какой-то степени мозг.

Я не знаю языков программирования, кроме поверхностного знакомства с синтаксисом python, javascript, go. Немного знаю html и css. Пусть это не будет отправной точкой для вашего совета, т. к. могу при необходимости изучить другой язык или другой инструмент.

Посоветуйте язык, к нему библиотеку или фреймворк для того, чтобы максимально быстро и просто реализовать мою задумку.

Это домашний проект для удовольствия и облегчения рутинных задач моей семьи. Ни на какие высокие награды за качество кода, глубокие познания особенностей и настройки БД, я не претендую. Просто хочется написать что-то свое, при этом слишком глубоко не ныряя в лишнюю в моем случае информацию.

Возможно ли сделать эти удобства с помощью одного языка вроде javascript? То есть фуллстэк? Шедевров анимации и интерактивности на сайте не надо, только банальные возможности без перезагрузки страницы, например, получать статус какой-то операции на сервере и прочее.

Почему web? Потому, что хочу иметь возможность использовать ресурс с разных устройств, разных платформ, в том числе мобильных. Понимаю, что нужна будет адаптивная (правильно?) верстка, но это, по-моему, проще, чем под каждую платформу писать нативное приложение.

Буду рад вашим советам.


Ответ на: комментарий от rtxtxtrx

React говно

смешивать логику и разметку

Используй Vue

Недоразметка в коде или недологика в шаблонах — что же выбрать? Очень сложный вопрос.

Вбивай Vue.js … и наслаждайся

У меня аж монитор засмузиточил.

Nervous ★★★★★
()
Ответ на: комментарий от Nervous

Недоразметка в коде или недологика в шаблонах — что же выбрать?

Какие-то нубские заявления в стиле слышал звон да не знаю где он

PHP-параша:

function Greeting(props) {
  return (
    <div>
      {props.isLoggedIn ? (
        <h1>Добро пожаловать, {props.user.name}!</h1>
      ) : (
        <h1>Пожалуйста, войдите в систему.</h1>
      )}
    </div>
  );
}

vs:

<template>
  <div>
    <h1 v-if="isLoggedIn">Добро пожаловать, {{ user.name }}!</h1>
    <h1 v-else>Пожалуйста, войдите в систему.</h1>
  </div>
</template>

<script setup>
const props = defineProps({
  isLoggedIn: {
    type: Boolean,
    required: true
  },
  user: {
    type: Object,
    required: true
  }
});
</script>

В первом случае, да, без скрипта для тупых IDE распарсить такое не сможет. А во втором расширение для Vue.js со всем справляется.

И это молчим про то что в реакте говно-функция может возвращать лишь один корневой элемент… А Vue 3 такое позволяет:

<template>
  <h1></h1>
  <p></p>
</template>

От чего разметка в реакте довольно таки мусорная, перегруженная лишними элементами…

А когда мы углубимся в скорость и прожорливость…

React - это типичный стокгольмский синдром, который путают с эффектом утенка.

rtxtxtrx ★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 3)
Ответ на: комментарий от rtxtxtrx

разметка в реакте довольно таки мусорная, перегруженная лишними элементами

А разные v-if, v-else и мульон других директив разметку только украшают, я понемаю.

когда мы углубимся в скорость и прожорливость

То увидим, что и то, и другое в основном зависит от писателя, а не от библиотеки. Хотя концептуальная простота означенной библиотеки, конечно, в свою очередь, влияет на качество понемания происходящего писателем — и тут вуй в очевидном проигрыше. Чего стоит разделение пропсов на собственно пропсы, события и слоты, каждое со своим нескучным синтаксисом. Особенно слоты, конечно —это вообще вынос мозга под траурную музыку.

А прибитая гвоздями самостийная, нестандартная валидация пропсов? Всё это увеличивает когнитивную нагрузку на и без того ослабленный неумеренным потреблением смузи мозг и негативно влияет на качество кода.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от Nervous

У тебя очень странные проблемы. Бросай пить смузи. Vue.js — это Angular здорового человека. Его разработчик внезапно работал над той сранью, переработал все старые идеи и родил более простой фреймворк, который не вызывал отторжения своей привязкой к практикам и парадигмам удод нета.

rtxtxtrx ★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 1)
Ответ на: комментарий от Nervous

И ты можешь использовать jsx в vue… Шок, да, кот в очках? И даже прикрутить TypeScript чтобы писать раза в три больше кода. У Vue еще плюс, что он не является разработкой какой-то корпорации (Meta — запрещенная в России террористическая организация). Я его выбрал тогда, когда о нем почти ничего не знали, а сейчас он на слуху… Хотя у меня и все претензии к React сводятся к ублюдскому JSX и Type Script.

rtxtxtrx ★★
()
Ответ на: комментарий от rtxtxtrx

фреймворк

Вуй не фреймворк, это такая же библиотека, как и реакт — view = f(state). Основная разница в том, каким образом состояние изменяется и как эти изменения отслеживаются.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от rtxtxtrx

ты можешь использовать jsx в vue

Да, можно выкинуть шаблоны и использовать рендер-функции (например, возвращающие JSX). Но зачем, если уже есть реакт? %)

Nervous ★★★★★
()
Ответ на: комментарий от rtxtxtrx

претензии к React сводятся … к Type Script

Смузиэнцефалопатия прогрессирует, я смотрю.

Кстати, на реальной работе тебя всё равно с вероятностью овер 90% ждёт тайпскрипт — вуй там или не вуй.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от rtxtxtrx

В [vue] есть то чего нет в React:

Двусторонее связывание

Сахарок для макак, чтобы можно было высрать ещё немного больше кода за день и погонщик пореже бил кнутом? %) Нет ничего сложного в том, чтобы передать компоненту два пропса — значение и обработчик изменения этого значения, ну вот совершенно ничего сложного.

Компонентная система

Я начинаю сомневаться, что ты вообще реакт видел вживую %) Там же вообще ничего нет, кроме компонентов.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 2)
Ответ на: комментарий от mydibyje

Очевидный PHP.

Да, но… Он же просил JavaScript на сервере и не погружаться. Я думаю тут никак, это взаимопротиворечивые требования.

Shushundr ★★★
()
Ответ на: комментарий от Shushundr

В посте не было про жс на серве. Пыха уже не одному поколению домохозяек помогла поднять свой сайт, чем ТС хуже? Пыха это до сих пор база вэба, есть на любом хостинге.

mydibyje ★★★★
()
Ответ на: комментарий от mydibyje

В посте не было про жс на серве.

Вот жи: «сделать эти удобства с помощью одного языка вроде javascript? То есть фуллстэк?»

Shushundr ★★★
()
Ответ на: комментарий от mydibyje

Чё там осваивать-то, import express from 'express' и погнали по ухабам.

Nervous ★★★★★
()

Лорчую php/vue, но python или go тоже пойдет.

Понимаю, что нужна будет адаптивная (правильно?) верстка

Бери какую-то библиотеку компонентов для vue, на голом html ты как начинающий не осилишь

Возможно ли сделать эти удобства с помощью одного языка вроде javascript? То есть фуллстэк?

Можно. Как видно из треда, веб-разработчики не особо любят писать бэкенд на жс, но если тебе прям нужно осваивать новый ЯП, то можно и на js сделать.

goingUp ★★★★★
()
Ответ на: комментарий от rtxtxtrx

PHP-параша на поверку лаконичнее и логичнее. Просто встраиваем код без кривляний с попытками засунуть ветвление и прочий пограмизм в рамки xml. Если бы еще существовали верстальщики, они бы повесились от таких шаблонов. А кодеру зачем такие приседания?

bread
()
Ответ на: комментарий от Nervous
Vue.js - The Progressive JavaScript Framework | Vue.js

https://vuejs.org
The Progressive JavaScript Framework...
React

https://react.dev
React is the library for web and native user interfaces...

Вывод: Vue лучше

rtxtxtrx ★★
()
Ответ на: комментарий от Nervous

Кстати, на реальной работе тебя всё равно с вероятностью овер 90% ждёт тайпскрипт

Нет, на реальной работе везде JS, а TS там где удоднетчики и явабои, в иных случаях там ts если и есть, то не более чем для тайпхинтов. Все было бы нормально, если бы он кардинально не привычный синтаксис языка

Я начинаю сомневаться, что ты вообще реакт видел вживую %) Там же вообще ничего нет, кроме компонентов.

А ты не видел Vue

rtxtxtrx ★★
()
Ответ на: комментарий от bread

За нее платят мало, поэтому пхпмакаки на какой-нибудь go переходят + кто бы что там не говорил, но питон и js больше похожи чем php и js. PHP плохой язык. Он скрывает ошибки, возвращая null и false, вместо того чтобы бросить исключения (раньше их там не было), вот поэтому в функцию может прилететь все что угодно, если на том же js пишет клинический похапешник и уже тем более нужно избегать React, который написали метановые пхпшники

rtxtxtrx ★★
()

тред не читал сразу отвечу

спринг на беке - реакт на фронте

ынтерпрайзненько

guyvernk
()
Ответ на: комментарий от Nervous

Недоразметка в коде или недологика в шаблонах — что же выбрать? Очень сложный вопрос.

Второе. Не нужен тьюринг в шаблоне, а вот видеть сразу всё - нужно

DumLemming ★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.