Здравствуйте, я начинающий программист. Знаю основы C#, когда-то виделся с HTML и CSS. Хочу создать мессенджер/социальную сеть. Я понимаю, что со знаниями основ C# я смогу сделать почти ничего, но хочу определить для себя направление: что мне нужно знать, чтобы зафигачить свою соцсеть. Чтобы в ней можно было регистрироваться, иметь свой блог, возможность переписываться с другими и чтобы все это было присыпано алгоритмом или искусственным интеллектом для сортировки контента. На каком языке такие чудеса пишутся, что примерно для этого нужно в плане знаний? Заранее спасибо всем за ответ, будет интересно почитать.
Я б взял джаву со спрингом под бэк. Постргре под базу. Под фронт ангулар. Всякий датамайнинг на перле. Технологии не с потолка, а среальных проектов привел.
От него уже даже букинг отказался, и рыдают над поддержкой оставшихся кусков, в поисках людей которые могут это поддерживать до тех пор пока все не перепишут под что-то более нормальное и микросервисное.
В остальном все перечисленные инструменты можно заменить на любой из схожего стека, и тоже сказать что "среальных проектов привел" (хотя что это я, проекты с перлом в ядре реально "среальные")...
* C# раз уж его знаете
* Микросервисы
* WebSockets
* WebRTC
* https://identityserver4.readthedocs.io/en/latest/ или azure ad
* Насчет подсказок не подскажу, да и врядли кто то будет делится кроме общих принципов
подучи базовые принципы как работают веб технологии и пиши.
Я не уверен, что для C# существуют популярные веб фреймворки общего назначения, там все завязано на ASPX
Поэтому бери любой другой язык, в идеале лучше выбрать фреймворк.
А так - php/python наверное лучший выбор.
Ну и понятноч то надо знать html/css/JS и работу с базами аднными.
Для начала было бы неплохо сделать кусочек, а то не зная ничего сразу соцсеть..
Saboteur, неправильно думать так про цели корпоративности
плюс соцсеть это тебе не страничку-лендинг запилить, очень сложный проект, поэтому если мыслишь категориями 'это для корпоративных приложений' то уровень сложности задачи - сравним.
Saboteur, ASPX остались во временах WebForms, сейчас на нем только легаси
Как уже сказал Василий Банников, есть ASP.NET 5 (бывший Core), ориентированный на написание микросервисов с REST API. Хотя свой шаблонизатор (Razor) там тоже есть. Там стандартная MVC архитектура, как, например, в тех же PHPшных фреймфорках
mletov, Ну смотри.
захостить php проект можно на самом дешевом хостинге
C# проект поддерживают не все, или надо брать VDI что уже в разы дороже.
замутить простейшее на PHP - легко, а топикстартер вообще новичок. C# изначально ООП язык, там в одну строчку вообще никак.
Отвечая на вопрос, надо принимать во внимание топикстартера, а не лучшие мировые практики сеньоров
Saboteur, Про хостинг согласен, шаредов под .NET не очень много.
"Hello world" действительно на PHP проще написать, чем на шарпе.
Но у тс и цель уж больно амбициозная.
чтобы зафигачить свою соцсеть. Чтобы в ней можно было регистрироваться, иметь свой блог, возможность переписываться с другими и чтобы все это было присыпано алгоритмом или искусственным интеллектом для сортировки контента
В "две строчки" по-любому не выйдет, какую технологию ни возьми. При такой постановке на PHP точно так же придется лезть во фреймворки, а там и ООП, и архитектура, по сложности выйдет сопоставимо с .NET.
mletov, Еще нюанс - на пыхе проще создать мвп, проще поддерживать, обслуживать, расширять и т.д., бо спецов банально больше и иногда дешевле (но важнее что больше). Как пример - вкашечка и мордокнига, оба писаные на пыхе, и только по прошествии достаточно большого количества времени перешедших к оптимизации, микросервисам кпхп, хипхоп и вот это все...
mletov, то есть, как я понимаю, делать на C# - дороже и геморней в плане выбора хостинга. Но с ООП C# легче соорудить такие больно амбициозные идеи, как соцсеть, чего бы не получилось с php или python. Я верно понял?
Моргенштерн Ахмедович, вам в любом случае будет очень сложно. Тут дело не в C# даже, а в сложности планируемого проекта и объеме работ. Рекомендация начать с чего-то попроще выглядит здраво. Начните, к примеру, с простенького блога
Виталий Хоменко, Я понимаю это. Мне просто интересно как это устроено и хочется выучить +- то что нужно для этого. В действительности естественно нужно начинать с малого. Социальная сеть - это как цель пока что.
Моргенштерн Ахмедович, если не учитывать особенности соц. сети, то это обыкновенный вебсайт. Изучайте базис - как создаются современные веб приложения, что такое бекенд-фронтенд и т.д. Начните с базовых курсов для новичков
ThunderCat, Если рассматривать задачу именно как бизнес проект, а тс видит себя впоследствии не рядовым программистом, а новым Цукербергом, то так и есть.
Но что-то мне подсказывает, что тс просто ищет амбициозную задачу, решение которой даст качественный рост программистских скиллов. Хотя может я и ошибаюсь.
Моргенштерн Ахмедович, С ООП в любом случае придется разбираться, хоть на C#, хоть на PHP. Возможно, на Node.JS это будет как-то иначе, у JS ООП весьма своеобразное, хотя если брать ts, то опять-таки классическое ООП)
Про хостинг да, все верно, под .NET выбор хостингов гораздо меньше, хотя тоже есть. Это не такая уж неразрешимая проблема. А вообще лучше для начала сделать что-нибудь хотя-бы на localhost.
захостить php проект можно на самом дешевом хостинге
C# проект поддерживают не все, или надо брать VDI что уже в разы дороже.
замутить простейшее на PHP - легко, а топикстартер вообще новичок. C# изначально ООП язык, там в одну строчку вообще никак.
Отвечая на вопрос, надо принимать во внимание топикстартера, а не лучшие мировые практики сеньоров
По моей практике net core 3.1 успешно справляется с теми нагрузками которые кладут php. Хостинг тот же БД таже. Такие вот дела.
ро хостинг да, все верно, под .NET выбор хостингов гораздо меньше, хотя тоже есть. Это не такая уж неразрешимая проблема. А вообще лучше для начала сделать что-нибудь хотя-бы на localhost.
Под .NET 4.8 хостингов да меньше, а под net 2, 3,5,6 берите любой из линуксов и все у вас будет нормально. Однако если нужен жирный хостинг, то тут разница вообще никакая приложение все под себя сожрет.
то есть, как я понимаю, делать на C# - дороже и геморней в плане выбора хостинга. Но с ООП C# легче соорудить такие больно амбициозные идеи, как соцсеть, чего бы не получилось с php или python. Я верно понял?
Нет, суть в том, что на C# изначально тебя будут мотивировать писать в ООП и готовы из коробки другие штуки, которые упрощают создание сложных проектов.
И прикол в том, что социальная сеть - это очень непростой проект.
Таким образом вы хотите взяться за задачу тогда, когда еще не понимаете какие вопросы задавать, чтобы они для вас были полезными. Весь этот вопрос и все ответы к нему вам сейчас не дадут ничего полезного. Ваши выводы нерелевантны
Под .NET 4.8 хостингов да меньше, а под net 2, 3,5,6 берите любой из линуксов и все у вас будет нормально. Однако если нужен жирный хостинг, то тут разница вообще никакая приложение все под себя сожрет.
Что значит любой из линуксов. Хостинг это просто место куда ты кладешь файлы по FTP и оно работает, потому что уже настроен какой-нить nginx/apache с php fast-cgi.
Это не виртуальная машина.
mletov, Я думаю нельзя, потому что данный хостинг поддерживает только php. Поэтому я и говорю, что не все хостинги .net, а Владимир утверждает что любой. Я промахнулся, обращался не к тебе.
mletov, а теперь подумайте о нагрузках. Социальная сеть это куча пользователей с кучей хотелок. То есть как минимум vps, а как максимум куча физических серверов.
не стоит думать что 3 копейки тебе дадут что то мощное.
Однако все мои клиенты либо хостятся в облаках либо нормальных железных серверах. Просто так удобней и меньше гемороя. В конце концов откатать бэкап это не проблема
Владимир Коротенко,
На начальном этапе в эту соц сеть будет заходить 5-6 друзей ТС и тратиться на VDS слегка преждевременно, шареда на первое время хватит. Тем более, судя по вопросам автора, пока проект учебный, раз тс даже с выбором языка не определился. Вот если из учебного он начнет перерастать в коммерческий и народ повалит валом...
Владимир Коротенко, Ты тыкаешь пальцем в СОВЕРШЕННО ДРУГОЕ предложение. А именно - в виртуальную машину, которая сразу стоит на порядок дороже.
Какие нагрузки если человек пишет свою социальную сеть, не являясь даже джуниором? Там не будет нагрузки, там надо чтобы в принципе запустилось и работало. А если зайдет 10-20-100 и даже 1000 человек, шаред хостинга за 1$ в месяц для этого более чем достаточно. Любой VPS стоит сразу гораздо дороже.
179 рублей в месяц (грубо говоря пачка сигарет)
Считать чужие деньги копейками - не есть гуд, особенно когда сеньор специалист смотрит на человека без работы.
Saboteur, нагрузки может и потянет, а вот в функционале потеряет
и да 179р = 2,49$ разница невелика, а вот возможностей в разы больше.
И так до кучи php ну это такое для больших проектов. Больше с языком борешься чем работу делаешь.
и да 179р = 2,49$ разница невелика, а вот возможностей в разы больше.
Итак еще раз.
1. Считать чужие деньги копейками - не есть гуд, особенно когда сеньор специалист смотрит на человека без работы. И разница не невелика, а почти в 3 раза.
2. Для кого больше возможностей, а для кого надо разобраться как это все еще админить. А тут у нас новичок, который не факт что даже связку php/apache или php/nginx сможет сам настроить.