На прошлой неделе официально вышел .NET 5.0. Эта версия не имеет статус Long term support, что гарантирует поддержку на протяжении долгого времени.
С появлением этой версии придётся приучить себя к новому именованию, потому что до сих пор когда мы говорили .NET, мы понимали Framework и был ещё .NET Core, но теперь .NET – это унифицированная платформа, как говорит Майкрософт, но по факту это практически следующая ветвь Core, а .NET Framework остался в прошлом.
Итак, новый канал с видеоуроками заработал и сегодня на нем появилось первое видео Введение в HTML - проще некуда. Текстовая версия доступна здесь.
Использовать чужой код совершенно не позорно, это нормально и даже необходимо в наше время. Если я пишу код сайта для ресторана, это не значит, что нужно самому писать базу данных, самому реализовывать JS фреймворк для сайта и.д.
Если вам на сайте нужен календарь, вы можете написать его сами, если это принесёт какое-то преимущество проекту. Но если в интернете есть код готового календаря, который устраивает вас, легко интегрируется и позволит в итоге сэкономить время на разработку, то его нужно обязательно использовать.
В Канаде я много раз слышал разговоры по поводу технического долга (technical dept), когда есть какое-то ограничение, оно может мешать нам расти или это просто грязный код, который нужно исправить, но ради соблюдения сроков народ соглашается с долгом и надеется исправить проблему позже. Такой технический долг в нашей компании является самым популярным на мой взгляд.
Но есть ещё долг устаревания технологий. Сегодня мы написали код на .NET Framework 3.5, а завтра этот Фреймворк устаревает, и мы уже застреваем в достаточно большом долге. И это реальность, ведь в популярности растёт .NET Core. А стоит устареть паре или тройке технологий и приложение уже будет проще переписать с нуля, чем заменить один из кирпичиков.
У меня примерно год назад была задача – переписать бизнес логику, которую написал другой программист за пару лет до меня, но у проекта вообще не было тестов и логика кода была на столько сложной с различными edge cases. Даже не знаю как перевести edge cases, но это когда есть какие-то редкие случаи, которые не должны случаться, но они могут выбиваться из общей логики.
Мне уже несколько раз приходилось поддерживать старый легаси код, который не всегда понятно как работает, но редко бывает необходимость полностью его переписывать.
Меня регулярно спрашивают о будущем каких-либо языков, и я не могу говорить за все, но вот про .NET и C# я могу сказать, так что сегодня поговорим о будущем фреймворка и языка C#.
Будущее у C# очень даже яркое и перспективное, потому что Microsoft уже не первый год поддерживает, продвигает и сама использует как C#, так и .NET Framework. В ближайшее время я не вижу ничего такого, что может стать смертью одного или другого, а наоборот, вижу рост и перспективы. Судя по всем показателям Azure растет в прибыли и становится одним из основных бизнесов для компании и чтобы эта облачная технология продолжала развиваться и процветать, она должна быть лучше конкурентов.
Сейчас смотрю, что там будет с языком C# и снова показали возможность с Nullable типами, что было кажется, еще на прошлом Build. Но на этом Build меня поразила возможность на картинке выше. Какого хрена Microsoft, куда делся класс и метод Main? Такое ощущение, что к нам вернулись лихие 90-е, когда мы можем писать код где попало и зачем попало.
Я тут решил попробовать, на сколько удобно и легко поставить Apache, PHP и MySQL на Windows Subsystem for Linux. Оказалось очень просто и гладко, как будто реально находитесь в Ubuntu. Я весь свой опыт задокументировал в виде статьи: Web разработка на PHP, Apache и MySQL под Windows или как поставить WAMP, она доступна всем.
Это не самая свежая новость, информация об этом появилась еще около недели назад, я просто не стал сразу ничего писать, потому что нужно было переварить информацию.
Конечно же этот шаг сделан для того, чтобы программисты могли работать на iPad Pro и создавать контент для App Store на ходу. Это повысит их производительность и поднимет сам магазин App Store немного выше.
Еще один вопрос от читателя о программистах в Канаде, на этот раз у меня поинтересовались спросом и заработной платой бакэнд программистов.
Я в Канаде с 2009-го года и пока не видел такой позиции программиста, которая бы была связана только с бакэнд разработкой. Я видел фронтенд программистов в предыдущей компании, но их задача была – нарезать PDF файлы и верстать из них e-mail письма. Наиболее продвинутые могли делать еще и сайты на CMS, которую сделали в самой компании. Иногда им приходилось делать немного C# кода, но минимально.