вторник, 17 июня 2014 г.

С чего начать изучение .NET. Советы. (WPF, SQL, ASP, frontend)

Ох, как же много изменилось с тех пор как я оставил прошлую публикацию в блоге, тогда я считал ту работу суперкрутой, но сейчас смотрю на неё как на говно и не хочется лишний раз открывать этот сайт.
В общем если ты программист и начинаешь изучать или некоторое время изучаешь C# и .NET платформу, и не хочешь терять время зря на бесперспективные и ни кому не нужные технологии, то у меня для тебя есть несколько советов:

  • После консольных приложений переходи на WPF, не задерживайся на Windows Forms, это "безперспективняк", а WPF научат тебя разметке XAML и после него легче будет написать какое-нибудь приложение на Windows Phone. Но в то же время не советую тратить время на изучение Silverlight (мертвая технология).
  • После того как надоест играться с клиентскими приложениями советую переходить на Web, потому как в основном нужны .NET-чики в этой сфере (если судить по многочисленным сообщениям на умных форумах и комментариям на Habrhabr'e(кстати очень рекомендую если еще не читаешь).
  • При работе с БД не используй запросы, в которые просто вклеены введенные данные (даже если так написано в умной книжке), по типу:        Потому-что: во-первых - это очень неграмотно и ужасное зрелище, а во вторых это чревато SQL инъекцией(какой-нибудь недоброжелатель может просто DROP-нуть все ваши таблицы). Используй параметризованные запросы или переходите на EF(Code First) или NHibernate(он чуть посложнее).
  • По части Web сайтов и Web приложений лучше всего изучать ASP.NET MVC, или сразу новейший на этот момент ASP .NET vNext. WebForm - это неудобно и бесперспективно(спасибо хорошему знакомому за правильное наставление). В то время как MVC - это общая, распространенная схема проектирования.
  • Если собираешься быть frontend разработчиком, или хочешь это попробовать то при разработке сайтов на .NET MVC неплохо применять Bootstrap чтобы было красиво, и изучать JavaScript как основу для AngularJS (динамичная работа с данными) и jQuery (для jquery плагинов).
Для примера скрин проекта, над которым я сейчас работаю:

Который не так красиво выглядит на скрине, но по крайней мере не смотрится как
"студенческая наколенная поделка" без особых заморочек с CSS.
"Динамический поиск по все значениям" ищет в реальном времени, при вводе символов в поле, с помощью крутого AngularJS (БОЛЬШОЕ спасибо Артему)).
Сейчас этот сайт закрыт от посторонних, но позже, когда закончу этот проект, подумываю выложить его отдельно в общий доступ как часть портфолио для демонстрации своих навыков.
Читать далее