Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 30 | 2 | 18
Назад Вниз Каталог Обновить

Бэкэнд-программирование. Простота и эффективность. Аноним 14/05/17 Вск 19:19:12  990537  
f2da1c598e2ff9b[...].jpeg (123Кб, 1500x900)
Приветствую, господа. Хочу узнать ваше мнение и советы по такому распространённому вопросу: "Какой язык выбрать для разработки на бэкэнде?" Долгое время смотрел соответствующие топики, но нигде не нашел решения для себя. Поэтому я и решился впервые задать вопрос самостоятельно.

Обращу внимание на то, что о разработки веб-приложений я не знаю НИЧЕГО. Информация в моей голове - это только куски пазлов, которые иногда складываются уже во что-то понятное для меня. Я зарабатываю на хлеб тем, что разрабатываю десктопные приложения на Qt в связке с PostgreSQL. Прошу учесть, что я не считаю себя профессионалом в программировании. Возможно, могу не верно употреблять терминологию и написать глупости, буду рад, если вы меня поправите в этом.

Задача перед мной такая:
Веб-приложение, которое структурирует данные, собранные с разных источников, и выводит статистику по ключевым словам. Данные представлены в виде рейтинга, при желании, в котором можно посмотреть график роста/снижения популярности по выбранному тэгу. В добавок будет подключаться сторонние аналогичные сервисы для улучшения объективности анализа, такие как Google Trends. Сбор данных происходит раз в неделю.

Почитав достаточно я подумал, что NodeJs - это тот инструмент, что нужно. Один язык как для клиентской, так и для серверной части, рост популярности JS и все другие преимущества, которые и вы сами наверно могли прочесть во множестве статей.

Лирическое отступление. Как мне показалось, Node все таки отличен от JavaScript (взгляд неопытного человека с небольшим багажом знаний в вопросе). Серверы, роутинг, модули - это несколько другой подход к созданиям приложений, как я привык. Видимо, надо менять свое мышление в отношении веб-разработки, тут иной подход. Это другая сфера, значит и другая методология, значит, опора на опыт предыдущий может повредить опыту последующему. При обучении, у меня не раз появлялись сомнения, что я могу в пустую тратить время. Предполагаю, что освоение пойдет долго, очевидно, будут застои в чем-нибудь. Понимание исходников с GitHub дается тяжело, я попросту пока не научился находить порядок их чтения. Фреймворки подобные Express и D3Js для построения графиков, а также MongoDB, тоже подлежали освоению, их я посчитал необходимым инструментарием в разработке. Но не переоцениваю ли я их? Обучение им будет долгим, но дадут ли они желаемое? Правильный ли путь выбрал? И другие сомнения часто крутились в голове.

Хочется иметь удобство в следующем:
1. Парсинг веб-страниц;
2. Работа с БД;
3. Работа с графиками;
4. Какие инструменты помогут выводить данные пользовотелям (да, в фронтэнд тоже не все радужно)
5. Наверно, экономичность в отношение к ресурсам (вычислительные, время, деньги);
6. Может что-то еще, о чем я пока не знаю (или забыл).

Люди, которые поняли, что я тут написал и имеющие опыт в данном вопросе, прошу вашей рекомендаций. На каком языке кривая освоения будет плавной? Может мне смотреть в сторону Python/Django, R, Go, C#, .Net и т.д.? В преимуществах перечисленных инструментов я не сильно осведомлен, т.к. я всегда попадал на статьи, которые рекомендовали JavaScript/NodeJs. Какие библиотеки вы посоветуете? Слышал, что в написании приложения, может быть два подхода: 1) этап создания прототипа, пишут, что для этого хорошо подходит Python (может это и есть то, что нужно?); 2) переписывают прототип на другом языке.
Где писать проще? Что будет более эффективным для моих целей? Где легче начать работать с чужими исходниками? Какие источники и ресурсы могут помочь мне в освоении? С помощью каких средств производить вывод на клиентскую часть?

Спасибо, что прочли. Написал много и сумбурно, но я просто хотел раскрыть картину, боясь задать слишком общий вопрос, которых и так полно (надеюсь получилось). Пока писал, в процессе мог и забыл, что-то раскрыть. Может, если не получить ответ, то хотя бы перенаправить ход мыслей в нужное русло, тоже будет полезным.

Жду рекомендаций и наставлений. Спасибо.


Аноним 14/05/17 Вск 19:21:26  990540
>>990537 (OP)
PHP
Аноним 14/05/17 Вск 19:28:14  990550
>>990540
Бля, спасибо. Только сделал запрос в гугле, как тут мне сразу пришло куча предложений. Сейчас зарабатываю 300к в наносекунду. Сижу на своем пляже. Пишу с аргентинки.
Аноним 14/05/17 Вск 19:45:17  990569
http://mojolicious.org/
Аноним 14/05/17 Вск 20:06:47  990586
>>990550
А что тебя не устраивает?

1. Парсинг веб-страниц;
2. Работа с БД;
3. Работа с графиками;
4. Какие инструменты помогут выводить данные пользовотелям (да, в фронтэнд тоже не все радужно)
5. Наверно, экономичность в отношение к ресурсам (вычислительные, время, деньги);
6. Может что-то еще, о чем я пока не знаю (или забыл).

Это все можно сделать на PHP, с упором на пункт 5, особенно. Не зная от вообще нихера уже примерно через месяц.
Аноним 14/05/17 Вск 20:08:28  990588
>>990537 (OP)
Go.
Больше вариантов нет.
Аноним 14/05/17 Вск 20:19:54  990600
>>990588
Почему больше вариантов нет? Думаешь Go - оптимальный выбор?
Аноним 14/05/17 Вск 20:25:33  990604
>>990586

Может ты и прав. Но может ли PHP справляться с большим кол-вом данных? Неужели там удобна работа с БД? И я могу привычно программировать на нем, как плюсах? Пока разбирался в Node, узнал, что PHP не занимается написанием своего сервера, а только решение прикладных задач. Я не думал, что полноценное приложение, как SPA, можно делать на PHP.
Аноним 14/05/17 Вск 20:36:25  990613
>>990600
Еще можно Хаскель.
Аноним 14/05/17 Вск 20:39:39  990617
pzeQZsJOTE.jpg (266Кб, 1366x768)
Дорогие аноны, простите, что не туда, просто это один активный тред. Делаю сайт через блокнот, задали в школе. Получается какая-то ерунда (пикрелейтед), перехожу по ссылке, пишет, что проблемы с сетевым соединением. Что это? Сил моих уже нет.
Аноним 14/05/17 Вск 20:44:45  990623
>>990617
Попробуй на Хаскеле.
Аноним 14/05/17 Вск 20:45:32  990624
>>990600
Он отчасти троллит.

> Почитав достаточно я подумал, что NodeJs - это тот инструмент, что нужно. Один язык как для клиентской, так и для серверной части <..>.
Типичная ошибка вкатывающейся хипстоты. Не сочти за оскорбление, я лишь указываю на расхожее заблуждение. Выучить язык — час чтения документации. Выучить технологию — месяцы. Проблема не в том, что фронтенд и бэкенд часто пишутся на разных языках, а в том, что они выполняют принципиально разные задачи и требуют принципиально разных технологий и подходов. Учись думать головой, а не статьями борщехлебов с Хабра.

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

Ну а какое отношение
> Парсинг веб-страниц
> Работа с графиками
имеют к бэкенду — это уже врачу своему расскажи.

Ты мне напоминаешь меня в девятом классе, когда я вместо того, чтобы сесть и делать, выбирал, какая технология мне поможет сэкономить такты процессора.

От себя посоветую брать Питон и перестать выебываться.
Аноним 14/05/17 Вск 20:51:59  990629
>>990624
>имеют к бэкенду — это уже врачу своему расскажи.
Может он хотел что бы сервер парсил?
Аноним 14/05/17 Вск 20:54:47  990632
>>990629
Сервер этого делать не должен, этим должны заниматься соответствующие воркеры.
Аноним 14/05/17 Вск 20:56:01  990633
>>990632
Вряд ли он планирует такой проект где у него все это будет.
Аноним 14/05/17 Вск 20:59:55  990636
>>990633
Если в его проекте этого не будет, то он не сможет держать более тридцати пользователей одновременно. А судя по тому, что он считает ньюфаг-тред недостойным своих охуенно важных вопросов, планы у него большие.
Аноним 14/05/17 Вск 21:08:33  990638
>>990537 (OP)
Бери любой.

/thread
Аноним 14/05/17 Вск 21:15:49  990643
Пи Тон
Аноним 14/05/17 Вск 21:17:13  990645
>>990588
Очевидный Elixir + Phoenix фреймворк.
Аноним 14/05/17 Вск 21:58:44  990656
>>990624

Хорошо, теперь хотя бы знаю где не прав. Думать головой с пустого места тоже не будешь, что начитал, то и выбираешь. Работа с графиками, это уже клиентская часть и тут другие инструменты визуализации, типа реактов и других библиотек. Парсинг то почему не относится? Просто думал, что не у всех языков одинаковый подход к работе с ключевыми словами. Сам только с XML работал стандартными функциями. Я думал, что один язык для веб это нормально и хорошо, ну как думал, так пишут, а значит не будут ли хуйню писать. Может питон и будем путем меньшего сопротивления. Хотя я могу до сих пор не понимать стуктуры таких приложений. Как у него со чтением чужих работ в начале обучения. Я когда-то учил его, но бросил, т.к. нашел работу несколько лет назад.

Сесть и делать. Когда разбираешься в чем-то новом, всегда крушится вокруг да около, ищешь, что тебе подойдет. Синдром девственницы, это норма я считаю, но ты прав, конечно.
Аноним 14/05/17 Вск 22:00:46  990658
>>990632

Про существование воркеров совсем не знал.
Аноним 14/05/17 Вск 22:54:23  990691
>>990645
Спасибо за совет. Посмотрю, видимо язык не очень распрастранен в рунете. Все туторы придется искать зарубежные, как понимаю. Пока не особо понял, чем он хорош.
Аноним 14/05/17 Вск 23:38:51  990734
>>990691
>не очень распрастранен в рунете
Да, это так. Но занятие программированием как бы подразумевает владение английским, хотя бы на уровне чтения документации, с которой у Elixir порядок.

>Все туторы придется искать зарубежные, как понимаю.
Да, но самих туторов много и они очень часто обновляются, так как комьюнити очень активное (что важное - опытное), что вообще свойственно community-driven технологиям.

>Пока не особо понял, чем он хорош.
Второй язык после рубей, где люди запаривались на тему UXа языка (т.е. программировать на нём не только полезно, но и просто приятно), все прелести эрланговской виртуальной машины (отказоустойчивость, изоляция, дикая распределённость, изначально правильно выбранные конкурентные примитивы), неплохая поддержка метапрограммирования (квазицитирование, антицитирование, сплайсинг и т.д.), ФП, передовая поддержка всех актуальных подходов к конкурентному программированию (из последних Dataflow -> FBP посредством GenStage + Flow), обратная совместимость с наработанной за 20+ лет кодобазой эрланга, включая базовый OTP-фреймворк, позволяющий легко строить масштабируемые серверные системы, ну и конечно же самый современный веб-фреймворк, стильный, модный, молодёжный.
Сегодня в СНГ Elixir'а действительно почти нет, так как СНГ - область с заторможенным временем и туда всё приходит с опазданием на 10 лет, но движ есть, в основном в UK и долине.
Аноним 15/05/17 Пнд 00:33:35  990772
>>990734
Динамическая параша.
Аноним 15/05/17 Пнд 01:10:13  990786
>>990604
>может ли PHP справляться с большим кол-вом данных?
У белых людей этим занимаются хранимые процедуры в базах данных. Учебники есть в Гугле.
>Неужели там удобна работа с БД?
Начиная с какой-то версии там появилась библиотека PDO.
>И я могу привычно программировать на нем, как плюсах?
Нет, с точки зрения дизайна — хуже Пыха за всё время ничего не придумано. "У семи нянек дитя без глазу".
>Пока разбирался в Node, узнал, что PHP не занимается написанием своего сервера, а только решение прикладных задач.
Он работает под Apache.

Алсо, я бы взял другой язык программирования, ибо вакансии на Пыхе низкооплачиваемые, и перспектив у него нет вообще, от слова совсем.
Аноним 15/05/17 Пнд 01:18:19  990787
>>990656
>Хотя я могу до сих пор не понимать структуры таких приложений.
Создаются пространства имён, в них функции (не объекты), которые принимают на вход данные и выбрасывают результат, ничего не сохраняют (всё равно Apache жосско удоляет их состояние). Протаскиваемые через них данные — обычно заворачивают в объекты: так удобнее.

Выше уже советовали Erlang и Elixir, так вот погугли «Programming Erlang: Software for a Concurrent World» (Joe Armstrong), у него тщательнейшим
образом разобран именно этот подход, потому что его чудо-язык по-другому выражать свои мысли не позволяет: он серверный, и это так и задумано. Вряд ли ты будет когда-нибудь на нём что-нибудь писать, но сами принципы надо смотреть в этой книге, больше просто негде, кругом одни формочки с патЭрнами.

Хранимые процедуры — в учебниках по сракле: Том Кайт и т.п.
Аноним 15/05/17 Пнд 01:20:14  990788
>>990772
Типы в заголовках функций сейчас уже задают и в Erlang, и в Elixir, и в Python 3.x и даже в Ruby и PHP 7.x.
"Было бы желание" (c).
Аноним 15/05/17 Пнд 12:22:54  990985
>>990772
На вкус и цвет, мне вот типы нахуй не нужны, только мешают. Но вообще Erlang анонимная типизация и есть статический анализатор на саксес тайпинге, если без него жить не можешь.

>>990788
>Типы в заголовках функций сейчас уже задают и в Erlang, и в Elixir
Ну это не типы, а просто имена структур.
Аноним 16/05/17 Втр 15:26:57  991733
>>990537 (OP)
Django+ReactJS. Сейчас так модно.
Аноним 16/05/17 Втр 17:24:26  991826
>>991733
>Django
>модно

хех)
Аноним 26/05/17 Птн 12:14:30  996502
>>990537 (OP)
Если тебе надо работать с большим количеством данных и обрабатывать это, то node тут не пойдёт. Так же Ruby и Python из-за медленной скорости тоже не будет лучшим вариантом. Плюс Питона это обработка очень больших чисел, но если тебе надо это делать быстро, то тут тебе надо GoLang, PHP

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 30 | 2 | 18
Назад Вверх Каталог Обновить

Топ тредов
Избранное