×Закрыть

Помогите выбрать инструменты для разработки web-приложения

Тема закрыта: выбрала ASP.NET.
P.S.: всем огромное спасибо!
P.P.S.: кому нужен падаван, работающий за еду? ;)

У меня есть собственное приложение для учета своих задач по технологии Scrum, хотелось бы его перевести в web. Это некоммерческая задача, просто для собственного развития, и, опять же, этим приложением я пользусь очень активно каждый день, легко будет находить недостатки и придумывать новые фичи :)

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

Функционал очень простой и стандартный:
— создаются задачи, оцениваются (в часах, баллах);
— в каждой задаче есть возможность запустить таймер;
— после окончания работы над задачей таймер останавливается и предлагает ввести описание того, что было сделано;
— по таймерам можно залогировать время;
— несколько отчетов по эфффективности работы, проценту выполнения работы, количеству затраченных часов;
— синхронизация с Jira по API (импорт задач из Jira, залогированное время отправляется в Jira);
— многопользовательская работа;
— изменение статуса задачи с помощью Drag&Drop.

Подскажите, пожалуйста, какие инструменты/технологии выбрать для перевода этого приложения в web?
Из языков программирования знаю 1С на уровне senior, Java на уровне недоjunior (прошла курс Java core и что-то пыталась программировать), C++ не практиковала со времен института...

Базу данных думаю использовать MySQL.

Перевод на web-платформу 1С не предлагать :)

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Как же вы писать приложение собрались, если ответов на начальные вопросы найти не можете?)

Бэкенд — php + Laravel / Symphony по выбору
База — MySQL
Сразу можно освоить Docker, чтобы потом не было мучительно больно
Фронт — js + Vue/React/Ember/Angular по выбору

А как Вы писали свое первое web-приложение? ;)
Вот к php точно не благосклонна... Были моменты сотрудничества с Bitrix, насмотрелась на php — ну я люблю, когда язык программирования более разборчивый))

Сравнили. Bitrix и ему подобные это 100% говнокод. В Laravel все перечисленные задачи вполняются очень просто, без велосипедов

Bitrix и Laravel — это совсем разное похапэ.

люблю, когда язык программирования более разборчивый))

Ruby/Rails <3

люблю, когда язык программирования более разборчивый))
Ruby/Rails <3

или Python с Джангой)

з.ы. и кстати, да: плюс к рубям и рельсам — это то, что на них ru.wikipedia.org/wiki/Redmine написан. Вроде оно из той же оперы, что и топикстартеру нужно (в плане управления зхадачами, тамеров, Jira и т.п.).

Смотря что считать первым )) Вообще — сел и начал писать. Php я начинал учить ещё когда он был 4й, и интернет был не у всех. Но принцип до сих пор одинаковый — гугл по нужной теме, открыть документацию, и сидеть писать.

А Bitrix — я его видел всего пару дней, когда на меня скинули задачу другого сотрудника. И плевался я очень сильно — там было ужасно всё, от админки до внутренностей. Это проблема битрикса была, никак не php. 2008 или 2009 это был.

Были моменты сотрудничества с Bitrix, насмотрелась на php

ИМХО, битрикс наверное чуть ли не самая худшая из наиболее популярных CMS-ок на пхп (в плане кода, да и в плане цены наверное тоже)...

Почитайте книжку «Разработка веб-приложений с использованием AngularJS» авторы Павел Козловский и Питер Бэкон Дарвин. Там на протежении всей книги в качестве примера приводится код разработки приложения для управления проектами в SCRUM. Технологии: front — AngularJS, back — Node.js, DB — MongoDB. Может быть полезным. Книга есть на русском.

Спасибо большое!

Java на уровне недоjunior

Spring Boot в вашем распоряжении) Особенно если учесть, что скоро выходит второй.

А вам действительно это нужно? Разве не нашлось уже готового инструмента по управлению проектами, который бы покрыл ваши требования?

Мне действительно нужно с чего-то начать. Лучше ведь начать с простой и понятной для меня задачи, главным пользователем которой буду сама, к тому же очень активным и заинтересованным пользователем! Фактически, я буду сама себе заказчик и исполнитель, очень удобно)

Чем писать очередную jira — лучше сделайте что-то полезное. :)

Например, прикрутите к гудвайновскому магазину «рекомендатор вин». Чтобы чел мог указать, к примеру, для красного вина вид винограда и/или кислотность и/или содержание танинов, итп параметры вина — а на выходе получил рекомендацию, какое вино (название/страна, может даже год) брать. И сразу советовал подходящие вина из гудвайновского ассортимента.
Вот это будет тема. Может вам даже гудвайн такое оплатит...

Интересная тема, я думаю, это будет очень-очень полезно, спасибо! А теперь главный вопрос — какие инструменты использовать, чтобы этот рекомендатор сделать? :) Так, чтобы он вписался в интернет-магазин?

Самое простое — теми же технологиями, что и основной шоп.

Любой язык на самом деле , хоть ПХП, хоть NODEJS

А как насчет ASP.NET? Это нормальная технология?

Нормальная, конечно. Только главное использовать ASP.NET Core а не олдскульный ASP.NET WebForms. Он конечно может выглядеть попроще для новичка (визуальный конструктор форм и т.п.), но он устарел.
И учтите что фронтэнд (то, что показывает браузер) — это будет фактически отдельный проект с JavaScript и фреймвёрками.

Ващщет есть ASP.NET MVC который не Core а обычный под винду и там есть жирный бонус — Entity Frameworks с Code First который сам генерит базу и все нужные связи между таблицами, сделает миграцию если связи между сущностями поменяются, и все это делается автоматом при запуске приложения.

Ващщет есть EF Core, который может примерно то же самое: docs.microsoft.com/...​f/efcore-and-ef6/features

Но то такое, ASP.NET MVC и ASP.NET MVC Core — это две стороны одной медали.

Many-To-Many, Lazy loading и мигратор автоматически он уже осилил?

Good Q.
LazyLoading вроде как делается через стороннюю либу github.com/...​tityFramework.LazyLoading
Остальное надо смотреть. Даже если сейчас нет — рано или поздно запилят.

Ну так может проще заюзать уже готовое из коробки, это ведь проект для развития? :-)

Что это за развитие — из коробки? Как я потом в резюме это сформулирую? ;-)

Из коробки значит оно уже там есть и не надо изобретать велосипед, полностью все охватить не получится, поэтому это упрсоти вам жизнь, когда дойдет в процесе обучения то сами подстроите или сделаете по своему.

Отлично подходит для написания как сложных так и простых сайтов, там есть готовый шаблон ASP.NET MVC с EF с Code First он заметно упростит работу с базой и миграции в ней, в шаблоне уже готовый модуль с авторизацией, контороллер добавляется в пару кликов и генерит готовые методы для CRUD операции, плюс есть поддержка докеров в 2017 студии, которые так же легко в пару кликов позволяют залить это дело в эйжур.

*зануда mod_on*
данная технология для простых сайтов, это как отстреливать воробьев с гранатомета.
*зануда mod_off*

Ну я не про сайты-визитки, а вот простое очень даже, в первые годы клепал всякие админ панельки и небольшие сайты аж бигом и очень все удобно, особенно наличие навроченного ORM.

На ГО тоже какой- то веб фреймворк есть

и не один, насколько мне известно)

с 1с далеко не уедешь...

Но и голодать не будешь ;)

Значит Вы еще не прошли точку невозврата. Вам надо на какую-то адовую работу устроится, чтоб мысли об уходе из 1с посещали Вас 58 раз в день.

Мне кажется, 1С тут ни при чем, в любой сфере можно найти адовую работу, если очень постараться))

Адовая работа это хороший стимул бежать из 1с не оглядываясь. Из личного опыта;)

И куда Вы убежали? В какую сферу?

Возле никнейма написано:)

Я тоже об этом мечтаю :)

Я так понимаю, фреймворки лучше не использовать:
habrahabr.ru/post/253297

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

Спасибо! Действительно, фреймворк, например, сегодня есть, а завтра нет, и привязываться к нему не очень хочется... А на Java такие web-приложения не пишут? Мне как основа Java очень нравится, но правильный ли это инструмент для моего приложения?

На Java пишут много всего разного. Есть JavaEE/Spring — как по мне так для тяжеленного здоровенного неповоротливого энтерпрайза только и годится. Хотя тот же Spring Boot много кто пытается юзать и под не на столько большие проекты. Я же юзаю в основном этот инструмент. Но там совершенно другая модель обработки запросов (не thread-per-request) и совершенно не нужны ни сервлеты ни апп-сервера ни тому подобное.

Спасибо большое, очень интересный инструмент!

Сколько таких статей от людей, которые ни один фреймворк не осилили — не счесть. Вообще основы js знать нужно и хорошо бы основы поучить отдельно, без фреймворка. Но для современного и качественного веб-приложения таки лучше использовать какой-нибудь фреймворк.

А в php, на мой взгляд, вообще можно начинать с фреймворком с первого дня.

Я честно пыталась освоить Python+Django, одно время смотрела в сторону PHP, пробовала написать на Java... Поняла, что я мечусь из стороны в сторону, но ни одна из этих технологий мне не нравится, только трачу время. Поэтому я и решила спросить у опытных web-программистов. И, кажется, пока остановилась на C# (+HTML, CSS, JS). Там мне, по крайней мере, все понятно и знакомо.

Откуда вам знакомо ,если вы на С# не писали?)

Его синтаксис наиболее близок к C++ и Java, а на С++ я писала в институте, Java изучала на курсах, с HTML, CSS, JS тоже баловалась когда-то, так что это наиболее родное из всего))

Но Джава и с++ вам не нравится, а си шарп нравится)

Я не говорила, что мне C++ не нравится, а теп паче my first love Java, просто не знаю к какому месту их прикладывать ;)

Джава -веб фрейморк Spring Web MVC , в С++ были тоже веб -фреймворки,
вот например:
cppcms.com/wikipp/ru/page/main
Про него хорошие отзывы на хабре.

Спасибо большое!

Если нравятся «плюсы» с «шарпами» — тогда оставьте вэб-хипстерщину хипстерам и подавайтесь в энтерпрайз. Бабла больше, востребованность тоже больше.
Но нужен английский.

П.С. Хотя, ASP.NET тоже может быть вариантом. Но в мире вэба его потребляют нечасто, а больше работают с «зоопарками»...

А в энтерпрайз десктопные приложения пишут?
Язык на уровне чтения (и понимания!) технической литературы считается нормальным? :)

1) Да.
2) Считается недостаточным. Нужно хоть какие-то понимание (на слух)/говорение, плюс продвинутая возможность переписки.

1. А что значит «зоопарки»?
2. Intermediate? Их есть у меня! :) Но я, почему-то, думала, что при разработке с англоязычными и другими заказчиками общается бизнес-консультант... Нет?

1. Зоопарки — это хипстерщина всякая. :)
2. Бизнес-консультант тоже может наличествовать — но затраты на него компания будет вычитать из зарплаты кодерка. Хотя, в подавляющем большинстве случаев, кодерка без языка просто не возьмут на проект, т.к. общение с заказчиком/людьми заказчика (по-крайней мере, переписка) — это, скорее, норма.

Спасибо! Переписка — это хорошо на первое время!

А что значит "зоопарки"?

ОЧЕНЬ большое разнообразие.

тогда оставьте вэб-хипстерщину хипстерам и подавайтесь в энтерпрайз.

Вы так говорите, как будто веб и энтерпрайз не могут пересекаться=)

Angular 5 / Vue.js + Spring boot 2 / Spring 5 + Hibernate / Spring Data + PostgreSQL.

Я ни CSS, ни JavaScript совсем-совсем немного не знаю... А еще написано, что Angular предназначен для разработки одностраничных приложений. А у меня разве будет одностраничное приложение? Не совсем понимаю этот термин...

Поняла, спасибо. Да, похоже мне нужно одностраничное приложение.

А еще вам надо выучить HTML, CSS и JavaScript. Как вы собрались без этого выб-приложение создавать?

Ну это да, несомненно! Я, конечно, загнула, что совсем не знаю HTML, CSS и JavaScript, просто практики мало. Буду по ходу дела разбираться)

Привет

Все зависит от функционала, который ты не упомянула, к тому же не уверен что такого было создано чего нет в аналогах на рынке.
Как пример:
— поддержка паралельной работы несоклькими пользователями?
— интерактивное перемещение задач по скрам\канбан доскам с помощью мышки как в джире?
и тд и тп.
Запости скрины на твой функционал, будет интересно посмотреть

Я же говорю, мне не для коммерции, а для саморазвития)
Просто хочу узнать технологию написания таких web-приложений, а потом, возможно, свяжу с ними свою жизнь :)
Функционал добавляю в описание, скрины выложу позже.

Какая интересная штука! Спасибо!

вы с ним хорошо знакомы?
там нет той боли, когда что-то генерируется для браузера именно вот так и приходится искать костыль, чтоб трансформация была, какая нужно тебе?

Нет, ковырял, но не для продакшена. Там уже 8-я версия, скоро будет 10-я. Думаю они ту стадию о которой вы пишете уже прошли.

Подписаться на комментарии