.NET — всё по этой теме для программистов


Оглавление (нажмите, чтобы открыть):

Какие бывают виды программистов? Виды деятельности программиста

Представьте себе постапокалиптическую картину мира без программистов. Драконы из «Игры престолов» превратятся в черно-белых Годзилл. Исчезнут чаты, мессенджеры и даже тетриса не будет. Мы нуждаемся в программистах. Они пишут коды для смартфонов, компьютеров и стиральных машин, заставляя технику работать. Но это далеко не все. У профессии много направлений и специализаций, каждая из которых имеет свои особенности и сложности, зарплата также зависит от того, чем занимается программист.

Web-разработчик

Самым востребованным на 2020 год видом профессии «программист» является веб-разработчик. К этой категории относятся специалисты по созданию сайтов.

Условно веб-мастера делятся на три группы:

  • разработчик Frontend;
  • Backend-программист;
  • Fullstack-девелопер.

Далеко не все знают, что такое клиентская и серверная часть. Поэтому работодатели зачастую путают специализации в веб-разработке. На биржах фриланса встречаются объявления, в которых наниматели от фронтенд-мастера требуют знания фулстак, при этом платят как за обыкновенную верстку.

Для не посвященных в мистерии кода это похожие виды направлений. Программисты занимаются, казалось бы, одним делом. Но инструменты, язык, обязанности и оклады у Frontend-мастера и серверного разработчика разные.

Кто такой фронтенд-разработчик?

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

Фронтенд разработчики – это вид программистов, отвечающих за создание виджетов, кнопок, выпадающего меню, слайд-шоу. Все интерактивные элементы появляются на страницах благодаря им. Они пишут скрипты на JS, включают их через HTML-теги и следят за тем, чтобы каждая часть кода работала правильно.

Инструменты фронтенд-разработчика

Писать код на HTML, CSS и JavaScript не достаточно. Чтобы оставаться конкурентоспособным на рынке труда, Frontend-разработчик должен знать следующее:

  1. jQuery. Библиотека JavaScript с коллекцией плагинов и расширений. Вместо того чтобы писать код с нуля, jQuery позволяет добавлять и настраивать готовые элементы. Например, автозаполнение форм, слайд-панель, таймер, связанная анимация.
  2. Фреймворки Bootstrap, Foundation, Backbone, AngularJS и EmberJS. Это программные оболочки повышающие производительность ресурса. Предоставляют готовый дизайн и существенно облегчают жизнь разработчика.
  3. Препроцессоры SASS и LESS. Добавляют CSS функциональности, обрабатывает код, превращая его в отформатированный и кросс-браузерный CSS.
  4. Популярные CMS — адаптивная верстка и кросс-платформенность.

Обязанности и виды деятельности программиста включают отладку и тестирование клиентской части. Веб-инженер проверяет отдельные блоки исходного кода на ошибки. Тестирует интерфейс, узнает, насколько пользователям будет удобно взаимодействовать с приложением. Также фронтенд-специалист должен разбираться в азах серверного программирования, технологиях Node.js, помимо JS писать на PHP и SQL.

Зарплата и перспективы

Средний оклад мастера составляет 66 тысяч 410 рублей в месяц. В США эта сумма вырастает до 102 тысяч долларов в год. Высокие зарплаты, легкость языка разметки и написания скриптов привлекает начинающих кодеров к фронтенд-разработке. Освоив JS, большинство из них переходит к серверным языкам. Самые талантливые учат высокоуровневые C и Java, постепенно осваивают геймдев, создание приложений и другие виды информационной деятельности программиста.

Программист серверной части

Backend – это часть веб-приложения, находящаяся на сервере. Она не отображается в браузере, но отвечает за изменения содержимого, обеспечивает динамическую работу и хранит всю информацию сайта. Состоит из сервера, приложения и базы данных. Вид программистов, которые занимаются созданием и разработкой этой части веб-ресурса называются Backend-разработчиками.

Программист серверной части – это следующая эволюционная ступень после фронтенд-разработчика. Его задача заставить сервер, приложение и БД взаимодействовать. Пишет на серверных языках PHP, Ruby, Python, Java и .Net. В качестве инструментов для работы с данными использует MySQL, Oracle и SQL Server. В описаниях вакансии работодатели часто указывают дополнительные требования:

  • знание фреймворков PHP: Zend, Symfony и CakePHP;
  • опыт работы с программным обеспечением контроля версий SVN, CVS или Git;
  • навыки работы с операционными системами Linux, Unix, MacOS X и Windows Server.

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

Разработчик Fullstack

Это вид работы программиста, включающий в себя все этапы создания веб-приложения. Fullstack developer –мастер на все руки, пишущий одновременно клиентскую и серверную часть. Первые упоминания о профессии появились в 2010 году после статьи сотрудника Facebook Карлоса Буэно. С этого момента компания нанимает работников исключительно уровня Fullstack.

Обязанности универсального веб-программиста:

  1. Серверное администрирование. Подключение через терминал к удаленным серверам без GUI. Управление пользовательскими группами, брандмауэрами, программами Apache и Nginx. Фулстак-программист должен все знать об облачном хостинге на платформах Heroku, Google Cloud, Azure, AWS и любых других.
  2. Создание бэкенда и базы данных. Специалист должен разбираться в базах данных MySQL, PostgreSQL, а также БД noSQL: MongoDB, Redis или Cassandra. Иметь представление о графовых СУБД, таких как Neo4j.
  3. Фронтенд-разработка и дизайн. Помимо стандартных обязанностей, верстки и подключения JS, Fullstack-мастер проектирует макет в редакторах Photoshop или Illustrator.

Фулстак-разработчики – это специалисты уровня Senior Developer. За ними охотятся хедхантеры и у них самые высокие оклады. В США зарплата Fullstack Developer начинается от 70-80 тысяч долларов и от 25-30 тысяч долларов в странах Восточной Европы. На иностранных биржах фриланса, например Upwork, один час работы Fullstack-разработчика оценивается в 30$ и выше.

Специалист по созданию и разработке компьютерных игр

Разработка компьютерных игр – одна из самых быстроразвивающихся сфер ИТ-технологий. По данным аналитического агентства NewZoo объем рынка видеоигр с каждым годом увеличивается на 9%. Если в 2020 году он составил почти 100 миллиардов долларов, то к 2020 году эта сумма увеличится до 112.5 миллиардов. Поэтому «инженер видеоигр» – это перспективная и высокооплачиваемая должность.

Инженер, или Game-разработчик – общее название категории специалистов, задействованных в процессе создания игры. Главная задача – превратить идею в программный код и заставить все элементы взаимодействовать. 90% рабочего времени программисты пишут и отлаживают алгоритмы на языке C++, Visual Basic, Java и MEL.

Романтики в профессии мало. В основном, это рутинный и многочасовой труд за компьютером. График обычно ненормированный. Если дизайнеру приходит гениальная идея срочно что-то переделать, всю ночь корпит над кодом именно программист.

Какие бывают виды программистов игр?

Создание консольной, мобильной или компьютерной игры – это многоуровневый процесс. Начинается на стадии проектировки, заканчивается продвижением и коммерческой реализацией продукта. Также у игры много отдельных аспектов, включая интерфейс, аудио и видео эффекты, искусственный интеллект. Для каждого есть отдельный вид программистов:

  • Ведущий программист по звуку: пишет утилиты, чтобы аудио и видео эффекты сочетались.
  • Разработчик игрового движка.
  • Специалист UI или создатель графического интерфейса.
  • Инженер искусственного интеллекта для имитации логики и принятия персонажами решений, особенно в играх, где от игрока зависят действия противника.
  • Программист геймплея: стратегия игры, реализация механики и логики.
  • Инженер устройств ввода. Пишет код для джойстиков, клавиатуры, мышки и устройств, с помощью которых пользователь будет взаимодействовать с видеоигрой.
  • Программист коммуникационных сетей для многопользовательских игр.

За свой труд на благо игровой индустрии данный вид программистов получает зарплату от 60 тысяч рублей. Доход инди-разработчиков точно просчитать сложно. Есть случаи, когда успешные проекты приносили миллионы буквально за неделю. Например, игра-хит Punch Club, Angry Birds и всем известная «Майнкрафт». Существуют, конечно, провальные задумки наподобие Scroll Ninja, не оправдавших ожидания создателей.


Системный программист

Система, софт, или программное обеспечение – это набор инструкций для компьютера. К ним относятся утилиты, драйвера, команды для процессора, графической карты, монитора. Пишет их системный инженер на понятном для машины языке, или коде.

Разрабатывается программное обеспечение под различные операционные системы, включая серверные Unix и Windows Server, а также мобильные платформы. Код пишется на языках «Си», за редким исключением Assembler. Основная задача системного инженера заключается в установке, настройке, тестировании ОС и всех ее компонентов

Различные виды профессии «программист» требуют от специалиста определенных навыков, опыта работы и уровня владения компьютерными языками. Но труд именно системных инженеров является самым сложным. Для создания ПО нужны углубленные знания информатики, алгебры, математики и построения алгоритмов.

Системный программист необходим в любой сфере ИТ, включая автоматизацию процессов производства и мониторинг безопасности. В США за труд специалиста готовы платить от 87 до 104 тысяч долларов. В Англии 57 тысяч фунтов стерлингов, в России 90 тысяч рублей.

Инженер прикладного программного обеспечения

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

Работа прикладного инженера заключается в написании кода, его последующей компиляции, отладке и тестировании. Иногда специалист обновляет или вносит изменения в уже существующее ПО. Для программирования использует высокоуровневые языки Java, C#, C++, Python, PHP. Прикладные программисты редко трудятся в одиночку. В основном, они являются участниками стартапов, или входят в штат сотрудников компании, занимающейся разработкой компьютерного софта.

«Программист» – интересная и разнообразная профессия с множеством направлений и специализаций. Одни делают виджеты для сайтов и проектируют API, другие пишут код для серверов или корпят над графикой Disciples III. Каждый, кто любит программировать, может реализовать себя в веб-разработке, стать именитым создателем игр или писать программы для спутников НАСА.

Кто такой C#/.NET Developer

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

Кто же такой .NET разработчик?

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

  • Обеспечена согласованная объектно-ориентированная среда программирования для локального сохранения и выполнения объектного кода, для локального выполнения кода, распределенного в Интернете, либо для удаленного выполнения.
  • Обеспечена среда выполнения кода, минимизирующая конфликты при развертывании программного обеспечения и управлении версиями.
  • Обеспечена среда выполнения кода, гарантирующая безопасное выполнение кода, включая код, созданный неизвестным или не полностью доверенным сторонним изготовителем.
  • Обеспечена среда выполнения кода, исключающая проблемы с производительностью сред выполнения сценариев или интерпретируемого кода.
  • Обеспечены единые принципы работы разработчиков для разных типов приложений, таких как приложения Windows и веб-приложения.
  • Разработано взаимодействие на основе промышленных стандартов, которое обеспечивает интеграцию кода платформы .NET Framework с любым другим кодом.

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

Примерный план обучения для C#/.NET разработчика по видео курсам ITVDN:

В состав платформы .NET входят такие популярные технологии:

ASP.NET MVC – технология, которая помогает создавать мощные надежные веб-приложения, с ее помощью можно легко создавать страницы, отображающие формы в браузере, что предоставляет развитый пользовательский интерфейс. Такие страницы очень сложны в сопровождении, поскольку они запускаются на многих клиентских машинах, но, благодаря ASP.NET, работа программистов значительно упрощается. Microsoft .NET поддерживает так называемые приложения «толстого» клиента — т.е. приложения, которые конечный пользователь устанавливает на своей машине, где и выполняется большая часть обработки.

Windows Presentation Foundation (WPF) — система для построения клиентских приложений Windows с визуально привлекательными возможностями взаимодействия с пользователем, графическая (презентационная) подсистема в составе .NET Framework (начиная с версии 3.0), использующая язык XAML.

Библиотека Windows Communication Foundation (WCF) обеспечивает возможность первоначального построения службы с последующей доставкой этой службы различными путями (даже по разным протоколам) простым изменением конфигурационного файла. WCF — весьма удобное средство соединения распределенных систем. .NET имеет много других возможностей и преимуществ для создания программных продуктов, о которых можно будет узнать по ходу изучения этой платформы.

Но необходимо помнить, что нельзя охватить все сразу. Для того, чтобы стать профессионалом своего дела, необходимо изучать технологии, которые входят в состав платформы .NET постепенно и последовательно, поскольку сама платформа включает огромное количество классов и библиотек.

Больше об этом вы можете узнать из записи вебинара «Как стать хорошим программистом?», автор Владимир Савинов (SolutionsArchitect, SoftServe).

Что необходимо знать, чтобы стать .NET разработчиком?

Все, конечно, зависит от того, в каком именно направлении разработки Вы хотите работать, но есть и общие требования:

Во-первых, это язык программирования C#, поскольку он, несмотря на использование внутри .NET framework и других языков, является основным;

Во-вторых, это базовые знания в программировании (системы счисления, базовые алгоритмы, базовые структуры данных);

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

И четвертый, обязательный для всех .NET разработчиков пункт – это OOP и OOD (парадигмы объектно-ориентированного программирования, паттерны проектирования).

Для того, чтобы детальнее разобраться в вопросе, мы рекомендуем к просмотру небольшие и информативные видео «Введение в C#», «Что нужно знать, чтобы стать .Net разработчиком?».

И, конечно, существуют отдельные требования к знанию английского языка на уровне, достаточном для чтения документации и комментирования кода. Начинающему IT-специалисту особенно важно правильно и грамотно составить резюме, написать сопроводительное письмо и подготовиться к собеседованию. Вы почерпнете очень нужные знания и найдете действительно дельные советы в видео «Successful Job Interview».

Что касается специальных требований, то они в каждой компании свои, но приблизительно выглядят следующим образом:

ASP.NETMVC разработчик:

  • доскональные знания ASP.NET MVC;
  • уверенные знания MS SQL;
  • владение языками C#, JavaScript, T-SQL;
  • понимание LINQ, WCF, SOAP.

Если же рассматривать требования касательно разработчиков десктопных приложений, то чаще всего это:

  • Хорошее знание С#/.NET 4.0;
  • Хорошее знание T-SQL, SQL Server 2012;
  • Опыт работы с MS TFS;
  • Знание и опыт использования технологий ADO.NET Entity FW.

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

С общими требованиями к разработчику, который только начинает свою карьеру и путь в .NET технологиях, будет интересна запись вебинара «Анализ требований на позицию Junior/Middle .NET Developer».


Уровень заработных плат и востребованность на рынке труда

Более десяти лет C# занимает лидирующие позиции во всех рейтингах языков программирования.

Согласно данным опроса сообщества DOU.ua в декабре 2020 года, .NET разработчики в Украине получают в среднем от $600 до $3263 в зависимости от опыта работы и занимаемой должности.

Рынок труда активно развивается и программисты, которые хорошо знают C# и технологии .NET, являются весьма востребованными.

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

Начало работы с .NET Framework Get started with the .NET Framework

Платформа .NET Framework — это среда выполнения, которая управляет приложениями, предназначенными для .NET Framework. The .NET Framework is a runtime execution environment that manages apps that target the .NET Framework. Она состоит из среды CLR, которая предоставляет инструменты управления памятью и другие службы системы, и обширной библиотеки классов, позволяющей программистам использовать устойчивый, надежный код во всех основных областях разработки приложений. It consists of the common language runtime, which provides memory management and other system services, and an extensive class library, which enables programmers to take advantage of robust, reliable code for all major areas of app development.

Мастер Йода рекомендует:  Искусственный интеллект научился использовать для победы баги в игре

Платформа .NET Framework доступна только для систем Windows. The .NET Framework is available on Windows systems only. Для запуска приложений в ОС Windows, MacOS и Linux можно использовать платформу .NET Core. You can use .NET Core to run apps on Windows, MacOS, and Linux.

Что такое платформа .NET Framework? What is the .NET Framework?

Платформа .NET Framework — это управляемая среда выполнения для ОС Windows, предоставляющая разнообразные службы запускаемым в ней приложениям. The .NET Framework is a managed execution environment for Windows that provides a variety of services to its running apps. Она состоит из двух основных компонентов: среды CLR — механизма, управляющего выполняющимися приложениями, и библиотеки классов .NET Framework — библиотеки проверенного кода, предназначенного для повторного использования, который разработчики могут вызывать из своих приложений. It consists of two major components: the common language runtime (CLR), which is the execution engine that handles running apps, and the .NET Framework Class Library, which provides a library of tested, reusable code that developers can call from their own apps. Вот какие службы предоставляет .NET Framework выполняемым в ней приложениям: The services that the .NET Framework provides to running apps include the following:

Управление памятью Memory management. Во многих языках программисты должны предусматривать выделение и освобождение памяти, а также управлять временем жизни объектов. In many programming languages, programmers are responsible for allocating and releasing memory and for handling object lifetimes. В приложениях .NET Framework эти функции выполняет среда CLR. In .NET Framework apps, the CLR provides these services on behalf of the app.

Общая система типов. A common type system. В традиционных языках программирования базовые типы определяются компилятором, что осложняет взаимодействие между языками. In traditional programming languages, basic types are defined by the compiler, which complicates cross-language interoperability. В .NET Framework базовые типы определяются системой типов .NET Framework, при этом для всех языков .NET Framework используются одни и те же базовые типы. In the .NET Framework, basic types are defined by the .NET Framework type system and are common to all languages that target the .NET Framework.

Обширная библиотека классов. An extensive class library. Разработчикам не требуется писать код для выполнения стандартных низкоуровневых операций программирования, так как они используют удобную библиотеку типов и членов, входящую в библиотеку классов .NET Framework. Instead of having to write vast amounts of code to handle common low-level programming operations, programmers use a readily accessible library of types and their members from the .NET Framework Class Library.

Платформы и технологии разработки. Development frameworks and technologies. Платформа .NET Framework включает библиотеки для конкретных областей разработки приложений, например ASP.NET для веб-приложений, ADO.NET для доступа к данным, Windows Communication Foundation для приложений, ориентированных на службы, а также Windows Presentation Foundation для классических приложений Windows. The .NET Framework includes libraries for specific areas of app development, such as ASP.NET for web apps, ADO.NET for data access, Windows Communication Foundation for service-oriented apps, and Windows Presentation Foundation for Windows desktop apps.

Взаимодействие языков. Language interoperability. Языковые компиляторы, ориентированные на .NET Framework, выдают промежуточный код, называемый языком CIL (Common Intermediate Language), который в свою очередь компилируется во время выполнения средой CLR. Language compilers that target the .NET Framework emit an intermediate code named Common Intermediate Language (CIL), which, in turn, is compiled at runtime by the common language runtime. С помощью этой функции подпрограммы, написанные на одном языке, доступны в других языках, поэтому разработчики могут создавать приложения на предпочитаемых языках. With this feature, routines written in one language are accessible to other languages, and programmers focus on creating apps in their preferred languages.

Совместимость версий. Version compatibility. Обычно приложения, разработанные на основе конкретной версии платформы .NET Framework, могут выполняться без доработок и на более поздних версиях платформы. With rare exceptions, apps that are developed by using a particular version of the .NET Framework run without modification on a later version.

Параллельное выполнение. Side-by-side execution. Платформа .NET Framework помогает разрешать конфликты версий, поскольку на компьютере могут быть установлены несколько версий среды CLR. The .NET Framework helps resolve version conflicts by allowing multiple versions of the common language runtime to exist on the same computer. Это означает, что несколько версий приложений могут сосуществовать и что приложение может выполняться на версии платформы .NET Framework, для которой оно было создано. This means that multiple versions of apps can coexist and that an app can run on the version of the .NET Framework with which it was built. Параллельное выполнение применяется к группам версий .NET Framework 1.0/1.1, 2.0/3.0/3.5 и 4/4.5.x/4.6.x/4.7.x/4.8. Side-by-side execution applies to the .NET Framework version groups 1.0/1.1, 2.0/3.0/3.5, and 4/4.5.x/4.6.x/4.7.x/4.8.

Настройка для различных версий. Multitargeting. При настройке в соответствии со стандартом .NET разработчики создают библиотеки классов, которые работают на различных платформах .NET Framework, поддерживаемых соответствующей версией стандарта. By targeting .NET Standard, developers create class libraries that work on multiple .NET Framework platforms supported by that version of the standard. Например, библиотеки, разработанные в соответствии со стандартом .NET 2.0, могут использоваться приложениями, ориентированными на платформы .NET Framework 4.6.1, .NET Core 2.0 и UWP 10.0.16299. For example, libraries that target the .NET Standard 2.0 can be used by apps that target the .NET Framework 4.6.1, .NET Core 2.0, and UWP 10.0.16299.

.NET Framework для пользователей The .NET Framework for users

Если вы не разрабатываете приложения .NET Framework, но используете их, вам не требуется обладать специальными знаниями о платформе .NET Framework или ее работе. If you don’t develop .NET Framework apps, but you use them, you aren’t required to have specific knowledge about the .NET Framework or its operation. В большинстве случаев платформа .NET Framework совершенно прозрачна для пользователей. For the most part, the .NET Framework is completely transparent to users.

Если используется операционная система Windows, платформа .NET Framework, возможно, уже установлена на компьютере. If you’re using the Windows operating system, the .NET Framework may already be installed on your computer. Кроме того, если устанавливается приложение, для работы которого требуется .NET Framework, программа установки приложения может установить нужную версию .NET Framework на компьютер. In addition, if you install an app that requires the .NET Framework, the app’s setup program might install a specific version of the .NET Framework on your computer. В некоторых случаях отображается диалоговое окно с приглашением установить платформу .NET Framework. In some cases, you may see a dialog box that asks you to install the .NET Framework. Если вы попытались запустить приложение и появилось это окно, при наличии подключения к Интернету можно перейти на веб-страницу, откуда можно установить отсутствующую версию .NET Framework. If you’ve just tried to run an app when this dialog box appears and if your computer has Internet access, you can go to a webpage that lets you install the missing version of the .NET Framework. Дополнительные сведения см. в руководстве по установке. For more information, see the Installation guide.

В общем случае не рекомендуется удалять версии платформы .NET Framework, установленные на компьютере. In general, you shouldn’t uninstall versions of the .NET Framework that are installed on your computer. Для этого имеются две причины: There are two reasons for this:

Если приложение зависит от конкретной версии платформы .NET Framework, то его работа может быть нарушена в случае удаления этой версии. If an app that you use depends on a specific version of the .NET Framework, that app may break if that version is removed.

В некоторых версиях платформы .NET Framework существуют локальные обновления на более ранние версии. Some versions of the .NET Framework are in-place updates to earlier versions. Например, .NET Framework 3.5 представляет собой обновление на месте для версии 2.0, а .NET Framework 4.8 — обновление на месте для версий с 4 по 4.7.2. For example, the .NET Framework 3.5 is an in-place update to version 2.0, and the .NET Framework 4.8 is an in-place update to versions 4 through 4.7.2. Дополнительные сведения см. в разделе Платформа.NET Framework: версии и зависимости. For more information, see .NET Framework Versions and Dependencies.

Если вы решите удалить платформу .NET Framework в версии Windows, предшествующей Windows 8, всегда используйте для удаления средство Программы и компоненты. On Windows versions before Windows 8, if you do choose to remove the .NET Framework, always use Programs and Features from Control Panel to uninstall it. Никогда не удаляйте версию платформы .NET Framework вручную. Never remove a version of the .NET Framework manually. В ОС Windows 8 и более поздних версий .NET Framework представляет собой компонент операционной системы, который нельзя удалить отдельно. On Windows 8 and above, the .NET Framework is an operating system component and cannot be independently uninstalled.

Обратите внимание, что на одном компьютере могут сосуществовать одновременно несколько версий платформы .NET Framework. Note that multiple versions of the .NET Framework can coexist on a single computer at the same time. То есть при установке более поздних версий удалять предыдущие версии не требуется. This means that you don’t have to uninstall previous versions in order to install a later version.

.NET Framework для разработчиков The .NET Framework for developers

Разработчики могут создавать приложения на любом языке программирования, поддерживающем платформу .NET Framework. If you’re a developer, choose any programming language that supports the .NET Framework to create your apps. Так как платформа .NET Framework обеспечивает независимость и взаимодействие языков, вы можете взаимодействовать с другими приложениями и компонентами платформы .NET Framework независимо от языка, с помощью которого они были разработаны. Because the .NET Framework provides language independence and interoperability, you interact with other .NET Framework apps and components regardless of the language with which they were developed.

Перед разработкой приложений или компонентов платформы .NET Framework сделайте следующее: To develop .NET Framework apps or components, do the following:

Если платформа не предустановлена в операционной системе, установите версию платформы .NET Framework, на которой будет работать ваше приложение. If it’s not preinstalled on your operating system, install the version of the .NET Framework that your app will target. Последняя рабочая версия — .NET Framework 4.8. The most recent production version is the .NET Framework 4.8. Она предварительно установлена в обновлениях Windows 10 за май 2020 года и доступна для скачивания в более ранних версиях ОС Windows. It is preinstalled on Windows 10 May 2020 Update, and it is available for download on earlier versions of the Windows operating system. Требования к системе для .NET Framework см. в разделе Требования к системе. For .NET Framework system requirements, see System Requirements. Сведения об установке других версий .NET Framework см. в руководстве по установке. For information on installing other versions of the .NET Framework, see Installation Guide. Дополнительные пакеты .NET Framework выпускаются внештатно. Это значит, что они выпускаются по очереди, нерегулярно. Additional .NET Framework packages are released out of band, which means that they’re released on a rolling basis outside of any regular or scheduled release cycle. Дополнительные сведения об этих пакетах см. в разделе .NET Framework и отдельные выпуски. For information about these packages, see The .NET Framework and Out-of-Band Releases.

Выберите язык или языки, поддерживаемые платформой .NET Framework, которые вы хотите использовать для разработки приложений. Select the language or languages supported by the .NET Framework that you intend to use to develop your apps. Поддерживается целый ряд языков, в том числе Visual Basic, C#, F# и C++/CLI от Майкрософт. A number of languages are available, including Visual Basic, C#, F#, and C++/CLI from Microsoft. (Язык программирования, позволяющий разрабатывать приложения для .NET Framework, соответствует спецификации Common Language Infrastructure (CLI).) (A programming language that allows you to develop apps for the .NET Framework adheres to the Common Language Infrastructure (CLI) specification.)

Выберите и установите среду разработки, которая будет использоваться для создания приложений и которая поддерживает выбранные язык или языки программирования. Select and install the development environment to use to create your apps and that supports your selected programming language or languages. Интегрированной средой разработки Майкрософт для приложений .NET Framework является Visual Studio. The Microsoft integrated development environment (IDE) for .NET Framework apps is Visual Studio. Доступны разные выпуски. It’s available in a number of editions.

Дополнительные сведения о разработке приложений, предназначенных для .NET Framework, см. в руководстве по разработке. For more information on developing apps that target the .NET Framework, see the Development Guide.

Программирование в .NET Framework

Что такое .NET Framework?

Программировать на языке C# без .NET Framework — это все равно что писать ручкой без чернил. Сколько ни води ею по бумаге, написать ничего не удастся.

Так что же такое .NET Framework? Это платформа программирования, разработанная корпорацией Microsoft, и язык C# создавался специально для нее. Платформа .NET Framework состоит из двух частей.

  1. Во-первых, она содержит огромную библиотеку классов, которые можно вызывать из программ, созданных на C#. Такая возможность избавляет от необходимости писать все заново.

  2. Во-вторых, в ее состав входит среда выполнения, управляющая запуском и работой готовых программ (это происходит абсолютно незаметно для вас и не вызывает никаких затруднений).

Итак, при написании программы на языке C# (или на любом другом языке .NET) наряду с созданием собственного кода используются классы, хранящиеся в библиотеке.

Библиотека .NET framework содержит огромное количество классов, и некоторые из них настолько сложны, что мы даже не будем пытаться рассмотреть все сразу. Расскажем лишь о тех, которые, на наш взгляд, наиболее полезны для начинающих программистов. Со временем вы станете запоминать классы, которыми пользуетесь чаще, чем другими, и постепенно хорошо их освоите. Ведь когда часто берешь в библиотеке любимую книгу, то легко запоминаешь, на какой полке ее искать.

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

Как изменять примеры программ и расширять их возможности

Я слышу ваше возмущение: «Легко сказать: измени программу! Но откуда мне знать, в каком направлении двигаться? В приведенных примерах используются лишь некоторые методы и классы .NET Framework, но ведь их очень много! Как о них узнать?»

10 причин, почему быть программистом действительно круто

13 сентября (в 256 день года) весь мир отмечает День программиста. Гик-сообщество давно ожидает, что эта дата станет красной в календаре (помните государственный курс на инновации?), но, кажется, наш голос пока слишком тих. Что ж, попробуем привлечь больше людей на нашу сторону, напомнив, почему быть программистом — круто.

Доступность обучения и развития

Сфера IT все время развивается и вы вместе с ней.

Изучайте книги и документацию, запишитесь на курсы, шерстите интернет, общайтесь на форумах и в сообществах. Практикуйтесь.

Реализуйте самые смелые фантазии в программах и приложениях. Так вы станете крутым специалистом и сможете работать в любой компании.

«Помните, как забыв про всё, вы собирали конструктор в детстве? Программирование – тот же конструктор, только для взрослых.

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

Самое интересное – использовать программирование для решения не только рабочих задач. Например, взял и сделал викторину по классическим композиторам или удобный калькулятор для домашнего пивоварения!»

Максим Ермоленков, разработчик Ruby on Rails в Рокетбанке.

Мастер Йода рекомендует:  Взаимодействие с Oracle на Perl

Трудоустроенность

Когда вы выбираете будущую профессию, именно этот вопрос встает в первую очередь. Если отбросить специалистов из сферы услуг (с продавцами и водителями такси сложно конкурировать), вряд ли вы найдете более востребованное направление. Неважно, куда вы направитесь: в мобильную сферу, веб, разработку десктопного и специального ПО, администрирование, моделирование и анализ данных, — везде требуется множество специалистов разного уровня.

«Сегодня HeadHunter рекомендует 4,5 тысячи вакансий на моё резюме. Я получаю столько звонков, что не на все собеседования успеваю сходить».

Интересная работа

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

«Программирование для меня — дело, которое никогда не дает скучать. Каждый день — новые вызовы и преодоления препятствий. Если ты справишься, получишь мало с чем сравнимое удовольствие. Видеть, как продуктом, созданным твоими руками, пользуются другие люди, дорогого стоит».

Константин Колесников, руководитель разработки GeekBrains.

Отличная зарплата

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

Светлое будущее

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

«Когда-то я и представить не мог, что во мне проснется интерес к разработке и IT в целом. Не мог, потому что не знал многих возможностей этой сферы:

большой инструментарий, чтобы работать на себя;

с технологиями можно связать любое свое увлечение или идею. Например, сделать сайт о путешествиях или обучающее приложение по игре на гитаре».

Роман Булатников, веб-разработчик, выпускник GeekBrains.

Куча новых знакомств

Для программистов проводится огромное количество событий, где можно завести кучу новых знакомств. Хакатоны, конференции, флешмобы — постоянно где-то проходит event, направленный на объединение, получение новых знаний. В такой ситуации найти друзей проще, чем откомментировать собственный код.

Радость интроверта

Программисты могут творить и быть свободными от общества. Большинство условий оформляется на бумаге, общение происходит по электронной почте и через мессенджеры — никаких проблем. Вы можете проводить дни напролёт, не вылезая из пижамы, и быть востребованным специалистом, официально зарабатывающим несколько тысяч рублей в день. Или торчать в openspace, окруженным перегородками, и вообще не замечать окружающих, никого это не смутит.

Свобода от офиса

Да, многие программисты работают удаленно. Опрос Developer Survey Results 2020 на Stack Overflow показал, что разработчики очень ценят возможность удаленной работы, в том числе, выбирают рабочее место по этому критерию. При таком обилии программ для дистанционного управления проектами, групповой разработки и рабочих чатов, можно легко работать из дома. И не только из дома.

Возможность жить и работать в любой точке мира

Если вы программист, вы не привязаны ни к офису, ни к городу, ни к стране. Хотите — живите на азиатских островах, работайте на мультинациональные корпорации в США и Европе, поднимайте бизнес в Африке и Латинской Америке. Границы для тру-программиста существуют только в голове. Да и то не в своей.


Программист — это звучит круто

The New Yorker еще в 2014 году назвал программистов новыми рок-звездами. С тех пор ценность программистов только растет. Присоединяйтесь к сообществу!

13 сентября (в 256 день года) весь мир отмечает День программиста. Гик-сообщество давно ожидает, что эта дата станет красной в календаре (помните государственный курс на инновации?), но, кажется, наш голос пока слишком тих. Что ж, попробуем привлечь больше людей на нашу сторону, напомнив, почему быть программистом — круто.

Доступность обучения и развития

Сфера IT все время развивается и вы вместе с ней.

Изучайте книги и документацию, запишитесь на курсы, шерстите интернет, общайтесь на форумах и в сообществах. Практикуйтесь.

Реализуйте самые смелые фантазии в программах и приложениях. Так вы станете крутым специалистом и сможете работать в любой компании.

«Помните, как забыв про всё, вы собирали конструктор в детстве? Программирование – тот же конструктор, только для взрослых.

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

Самое интересное – использовать программирование для решения не только рабочих задач. Например, взял и сделал викторину по классическим композиторам или удобный калькулятор для домашнего пивоварения!»

Максим Ермоленков, разработчик Ruby on Rails в Рокетбанке.

Трудоустроенность

Когда вы выбираете будущую профессию, именно этот вопрос встает в первую очередь. Если отбросить специалистов из сферы услуг (с продавцами и водителями такси сложно конкурировать), вряд ли вы найдете более востребованное направление. Неважно, куда вы направитесь: в мобильную сферу, веб, разработку десктопного и специального ПО, администрирование, моделирование и анализ данных, — везде требуется множество специалистов разного уровня.

«Сегодня HeadHunter рекомендует 4,5 тысячи вакансий на моё резюме. Я получаю столько звонков, что не на все собеседования успеваю сходить».

Интересная работа

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

«Программирование для меня — дело, которое никогда не дает скучать. Каждый день — новые вызовы и преодоления препятствий. Если ты справишься, получишь мало с чем сравнимое удовольствие. Видеть, как продуктом, созданным твоими руками, пользуются другие люди, дорогого стоит».

Константин Колесников, руководитель разработки GeekBrains.

Отличная зарплата

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

Светлое будущее

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

«Когда-то я и представить не мог, что во мне проснется интерес к разработке и IT в целом. Не мог, потому что не знал многих возможностей этой сферы:

большой инструментарий, чтобы работать на себя;

с технологиями можно связать любое свое увлечение или идею. Например, сделать сайт о путешествиях или обучающее приложение по игре на гитаре».

Роман Булатников, веб-разработчик, выпускник GeekBrains.

Куча новых знакомств

Для программистов проводится огромное количество событий, где можно завести кучу новых знакомств. Хакатоны, конференции, флешмобы — постоянно где-то проходит event, направленный на объединение, получение новых знаний. В такой ситуации найти друзей проще, чем откомментировать собственный код.

Радость интроверта

Программисты могут творить и быть свободными от общества. Большинство условий оформляется на бумаге, общение происходит по электронной почте и через мессенджеры — никаких проблем. Вы можете проводить дни напролёт, не вылезая из пижамы, и быть востребованным специалистом, официально зарабатывающим несколько тысяч рублей в день. Или торчать в openspace, окруженным перегородками, и вообще не замечать окружающих, никого это не смутит.

Свобода от офиса

Да, многие программисты работают удаленно. Опрос Developer Survey Results 2020 на Stack Overflow показал, что разработчики очень ценят возможность удаленной работы, в том числе, выбирают рабочее место по этому критерию. При таком обилии программ для дистанционного управления проектами, групповой разработки и рабочих чатов, можно легко работать из дома. И не только из дома.

Возможность жить и работать в любой точке мира

Если вы программист, вы не привязаны ни к офису, ни к городу, ни к стране. Хотите — живите на азиатских островах, работайте на мультинациональные корпорации в США и Европе, поднимайте бизнес в Африке и Латинской Америке. Границы для тру-программиста существуют только в голове. Да и то не в своей.

Программист — это звучит круто

The New Yorker еще в 2014 году назвал программистов новыми рок-звездами. С тех пор ценность программистов только растет. Присоединяйтесь к сообществу!

8 видов российских программистов

Какие кодеры наиболее востребованы в нашей стране?

Если сказать простому человеку, что ты работаешь программистом, то в ответ можно услышать одну из следующих реплик:

  • «Мне надо переустановить Windows. Я всю жизнь ждал того, кто сделает это для меня. А потом пойдем чинить тостер.»;
  • «О! Ты можешь помочь мне с лабораторной работой на VBA!»;
  • «За сколько сможешь сделать сайт для магазина моей мамы?»;
  • «Да ну! Скучная и дурацкая профессия. Я вот как-то пробовал разобраться с 1C…».


Если в ответ сказать, что ты ни разу не делал сайты и лабы на VBA, а Windows видишь только в страшных снах, то собеседник может искренне удивиться и на его лице отразится искреннее сомнение в твоей профессиональной пригодности. Некоторые разработчики слабеют под таким взглядом и идут доказывать, что они что-то могут. Из-за таких лохов в голове обывателя слово «программист» является синонимом понятия «бесплатная компьютерная помощь».

Ведь многие люди не знают, чем на самом деле занимаются программисты и судят об этом по навыкам своих родственников/знакомых. Но разные представители специальности делают абсолютно разные вещи и нельзя говорить за всех.

Эта статья расскажет об основных специализациях программистов, которые наиболее востребованы на российском рынке. Для каждого типа будут указаны организации, где его можно встретить чаще всего и технологии, с которыми ему надо уметь работать.

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

1. Front-end веб-разработчик

Если мы заходим на сайт и там есть кнопочки, которые меняют местоположение и цвет при наведении на них мышкой, то это дело рук front-end разработчика. Он пишет весь код на JavaScript, который выполняется без перезагрузки страницы на стороне клиента.

Где работает?

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

Что делает?

Разрабатывает динамику пользовательского интерфейса. Если в компании нет верстальщика, то еще и переводит PSD-шаблоны в HTML-код.

Технологии

  • HTML и UI фреймворки (Bootstrap, Foundation, Pure);
  • CSS и препроцессоры (SASS/LESS);
  • JavaScript + фреймворки/библиотеки на этом языке (Jquery, ReactJS, AngularJS, BackboneJS);
  • Утилиты для сборки проектов (Grunt, Gulp, Bower).

2. Back-end разработчик

Человек на плечи которого ложиться основное бремя по разработке веб-проекта. Он как бы строит фундамент, на который front-end разработчик прицепляет «декоративные элементы».

Где работает?

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

Что делает?

Разрабатывает “ядро” сайта или веб-приложения: код исполняемый на сервере и архитектуру базы данных.

Технологии

Один из нижеперечисленных языков и фреймворки/библиотеки для него:

  • Базы данных MySQl/PostgreSQL/NoSQL.

3. Full-stack веб-разработчик

Человек, который может сделать сайт любой сложности «от и до».

Где работает?

Чаще всего в стартапах и небольших студиях веб-дизайна. В крупных компаниях содержится в команде наряду с front-end и back-end разработчиками, чтобы контролировать и координировать их работу.

Что делает?

Сайты и веб-приложения. Выполняет работу front-end и back-end разработчика одновременно.

Какие технологии ему желательно знать?

См. списки двух предыдущих типов.

4. Разработчик игр

Очень широкое понятие, которое включает как минимум три крупных категории: разработчик десктопных игр, разработчик мобильных игр и разработчик MMORG.

Где работает?

В игровых студиях.

Что делает?

Какие технологии ему желательно знать?

  • С#/C++/Java;
  • Open GL или DirectX;
  • Один из игровых движков (Unity, Unreal Engine, Torque и другие).


5. Разработчик приложений под Android

Где работает?

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

Что делает?

Разрабатывает приложения под операционную систему Android.

Какие технологии ему желательно знать?

6. Разработчик приложений под iOS

Где работает?

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

Что делает?

Разрабатывает приложения под операционную систему iOS.

Технологии

7. Программист 1C

Многие разработчики не считают язык, встроенный в 1C, языком программирования, а людей, которые пишут на нем, программистами. У них есть на это свои основания. Тем не менее, людей которые называют себя программистами 1C и вакансий для них очень много.

Где работает?

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

Что делает?

Пишет программы для автоматизации документооборота в компании.

Технологии

  • «1С:Управление торговлей»;
  • «1С:Бухгалтерия»;
  • «1С:Зарплата и кадры»;
  • T-SQL.

8. Инженер-программист

Если одним из 7 предыдущих типов можно стать отучившись на курсах или путем самообразования, то инженеров-программистов выпускают только технические ВУЗы. Часто на этих должностях работают люди старше сорока лет, получившие образование в советское время.

Где работает?

На производстве или в научном учреждении.

Что делает?

Разрабатывает программы для управления самыми разными устройствами: от печи на хлебозаводе до робота-пылесоса.

Технологии

Один из нижеперечисленных языков:

+ огромный багаж технических знаний, соответствующий отрасли в которой человек работает.

Если посмотреть объявления о найме программистов на российских сайтах, то 90% из них будут подходить под эти семь типов. На Западе рынок вакансии несколько разнообразнее. Кто интересуется, может зайти на Odesk и посмотреть, какая работа там предлагается.

С грустью замечаю, что 14-летние пакистанцы требуют там за html-верстку от 500 рублей в час.

А судить о том, какие языки сейчас наиболее популярны в мире можно по данным Tiobe Index. Этот рейтинг строится по числу запросов в поисковых системах с упоминанием разных языков программирования.

P.S. Напоследок, жизненный анекдот в тему.

Если бы водителей нанимали на работу так же как программистов:
Вакансия: водитель.
Требования: профессиональные навыки в управлении легковыми и грузовыми автомобилями, троллейбусами, трамваями, поездами метрополитена и фуникулёра, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/средними танками, находящимися на вооружении стран СНГ и НАТО. Навыки раллийного и экстремального вождения обязательны. Опыт управления болидами “Формулы 1″ — приветствуется. Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, бортовых компьютеров, антиблокировочных систем, навигационных систем и автомобильных аудиосистем ведущих производителей. Опыт проведения кузовных и окрасочных работ — приветствуется. Претенденты должны иметь сертификаты Mercedes, BMW, General Motors, а также справки об участии в крупных международных соревнованиях не более, чем двухлетней давности.
Зарплата: определяется по результатам собеседования.

(4.69 из 5, оценили: 13)

Win 10 для программиста: полный гайд по новым фичам

Содержание статьи

Пока не появился финальный релиз Windows 10 и Visual Studio 2015, мы старались по максимуму подготовить читателя к тем фичам, которые были обещаны Майкрософтом нашему брату-программисту. И вот десятая винда вышла в свет, и ее уже установили миллионы пользователей, среди которых, как мне доподлинно известно, есть программисты :). А это значит, что пора сравнить ожидания и реальность и посмотреть на те возможности, которые нам теперь доступны: Xamarin, Apache Cordova, UWP, поддержка Python, .NET Native, DirectX 12, VS Code, Windows IoT и многое другое. Вперед!


Visual Studio 2015 — качай Community-версию!

А все потому, что Community-версия содержит практически все основные возможности профессиональной версии и их с избытком хватает для разработки любых приложений. Перед Express-версиями она выигрывает тем, что содержит весь комплект тулз и тебе не надо устанавливать отдельные наборы для Windows, Web и для Desktop.

Термоядерная кросс-платформенность

Разрабатывать кросс-платформенные мобильные приложения позволяет платформа Xamarin. С ее помощью можно создавать приложения для трех основных мобильных операционных систем (Windows Phone, iOS, Android), используя одну кодовую базу на языке C#. Таким образом, Xamarin служит слоем между C# и нативными API разнообразных операционных систем. Поддержка Xamarin в студии реализована через продукт Xamarin for Visual Studio, начальный выпуск которого включен в Visual Studio 2015. После создания проекта на платформе Xamarin будет предложено скачать дополнительные инструменты: Android SDK, Xamarin Studio, GTK# for .NET; а также добавить аккаунт.

Бесплатно, к сожалению, можно зарегистрировать только триальную лицензию, которая предполагает существенные ограничения: системный splash-экран без возможности его замены, работа приложения на устройстве только в течение суток. Тем не менее у разработчика есть все необходимые для разработки мобильных приложений инструменты, в том числе продвинутый конструктор макетов.

Еще один способ создания кросс-платформенных мобильных приложений заключается в использовании инструментов Apache Cordova, предоставляющих средства для создания мобильных приложений на веб-языках: HTML, CSS, JavaScript. Благодаря Apache Cordova программист может, используя JavaScript, разрабатывать приложения для Windows Phone, Android, iOS. При этом приложения будут иметь доступ к определенным API конкретной операционной системы. Это достигается подключением модулей, предназначенных для работы с каждой операционной системой.

Мастер Йода рекомендует:  Как использовать в Photoshop инструмент «Текст»

Теперь, когда JavaScript — полноправный язык Visual Studio 2015 (Игорь Антонов, чувствую, в восторге ;). — Прим. ред.), студия предоставляет разработчику все содержащиеся в ней передовые возможности по написанию, редактированию и отладке кода, JavaScript IntelliSense, проводник DOM, консоль JavaScript, точки останова, контрольные значения, языковые стандарты, а также многое другое.

Эмулятор Apache Cordova

Кросс-платформенные приложения могут быть созданы и с помощью Visual C++. Пока только для двух платформ: Windows 10 и Android. Но Microsoft обещает добавить возможность разработки приложений на C++ для iOS из Студии в ближайшее время. По сути, C++ достаточно низкоуровневый язык, и написанный на нем код выполняется на большинстве платформ без дополнительных извращений. Поэтому большое значение имеют написанные на C++ библиотеки, которые используются в приложениях, предназначенных для разных платформ.

Visual Studio 2015 содержит шаблоны приложений на C++ как для Windows, так и для Android. В последнем случае создаются приложения Android Native Activity с использованием NDK. Такие приложения стоит создавать, только когда программе требуется работа с устройством на низком уровне, например в приложениях, в которых реализуются кастомные системы управления ресурсами, в том числе оперативной памятью, и графический пайплайн. В других же случаях рекомендуется использовать высокоуровневые средства, это упростит разработку, и к тому же скорость выполнения не будет уступать оптимизированному нативному коду.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

Юрий Язев

Широко известен под псевдонимом yurembo. Программист, разработчик видеоигр, независимый исследователь. Старый автор журнала «Хакер».

Начинающему программисту о специальности. Что должен знать .NET разработчик

Как выбрать специальность и спланировать обучение, если Вы решили самостоятельно обучиться программированию?

Многие начинающие разработчики в течение достаточно длительного времени пребывают в растерянности, не зная, как стать профессионалом, начать работать в хорошей компании и получать достойную оплату. Будем отталкиваться от вполне конкретной цели – стать .Net разработчиком. Программистов, которые используют возможности и инструменты .NET Framework часто называют .NET разработчиками.

.NET Framework — это программная платформа, выпущенная компанией Microsoft в 2002 году. Основой платформы является исполняющая среда Common Language Runtime (CLR), способная выполнять как обычные программы, так и серверные веб-приложения. .NET Framework поддерживает создание программ, написанных на разных языках программирования. Основной идеей при разработке .NET Framework являлось обеспечение свободы разработчика за счёт предоставления ему возможности создавать приложения различных типов, способные выполняться на различных типах устройств и в различных средах. Вторым принципом стало ориентирование на системы, работающие под управлением семейства операционных систем Microsoft Windows.

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

Профессиональные .Net разработчики должны соответствовать требованиям современных работодателей, а также иметь соответствующий опыт. Это включает в себя следующее:

  • Знание Microsoft Visual Studio 2012
  • Базовая алгоритмическая подготовка
  • Опыт командной работы по методике SCRUM
  • Опыт работы с фреймворками для модульного тестирования
  • Опыт работы с TFS
  • Базовый уровень знаний и опыт работы с .NET Framework
  • Знание технологий Windows Forms
  • Знание языка программирования C# на уровне Professional
  • Знание технологий работы с базами данных
  • Выполнение анализа и проектирования программных решений
  • Знание и умение применять средства коллективной работы, умение читать и понимать чужой код

Освоить данную специальность Вы можете, изучая последовательно отдельные технологии:

  • C#Стартовый, С# Базовый, С# для профессионалов
  • SQL для начинающих
  • ADO.NET
  • Entity Framework
  • Refactoring в приложениях .Net
  • Шаблоны проектирования
  • SCRUM
  • TFS

Итак, освоили Вы самые основы премудростей нового для вас языка программирования. Пора развиваться дальше. И здесь существует путь дальнейшего совершенствования мастерства: практика.

Практика. Без практики все ваши знания – бесполезны и мертвы. Примите участие в каком-либо Open Source проекте или пройдите Программу получения опыта в СyberBionic Systematics. Замечательный способ попрактиковаться в использовании языка программирования – решение алгоритмических задач. В сети предостаточно веб-сайтов, представляющих сборники таких задач. Некоторые из них даже имеют свою рейтинговою систему, учитывающую общее количество решенных задач конкретным пользователем, правильность решений и скорость публикации ответов пользователем. Следующий совет – для сильных духом оптимистов: напишите свое лучшее в мире приложение. Это прекрасная возможность погрузиться как в язык программирования, так и в платформу, так как лучший опыт – тот что получен на собственных ошибках, в процессе поисков решений возникающих по ходу разработки проблем.

А какие же преимущества существуют для профессионального программиста в современном мире? Вам стало быть интересно, какие плюсы данной профессии?

Во-первых, как отмечают кадровые агентства Украины, специалисты сферы IT являются самыми дефицитными.

Стать специалистом можно за 3-9 месяцев, но важно правильно спланировать обучение. Наш Учебный центр может в короткий строк дать Вам максимум полезной информации и навыков. В CyberBionic Systematics кроме очного обучения есть еще on-line и видео обучение, что позволяет изучать программирование на C# и технологии .NET удаленно и при этом иметь возможность консультироваться с тренером по всем учебным вопросам.

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

Если Вы твердо решили для себя освоить профессию .Net разработчика, мы с радостью поможем Вам покорить новую вершину.

Учебный центр CyberBionic Systematics:

Адрес: Киев, ул. Марины Расковой, 19, 8 этаж.

Тел: +38(044) 361 89 37

График работы: с 9:00 до 21:00 ежедневно без выходных


8 видов российских программистов

Какие кодеры наиболее востребованы в нашей стране?

Если сказать простому человеку, что ты работаешь программистом, то в ответ можно услышать одну из следующих реплик:

  • «Мне надо переустановить Windows. Я всю жизнь ждал того, кто сделает это для меня. А потом пойдем чинить тостер.»;
  • «О! Ты можешь помочь мне с лабораторной работой на VBA!»;
  • «За сколько сможешь сделать сайт для магазина моей мамы?»;
  • «Да ну! Скучная и дурацкая профессия. Я вот как-то пробовал разобраться с 1C…».

Если в ответ сказать, что ты ни разу не делал сайты и лабы на VBA, а Windows видишь только в страшных снах, то собеседник может искренне удивиться и на его лице отразится искреннее сомнение в твоей профессиональной пригодности. Некоторые разработчики слабеют под таким взглядом и идут доказывать, что они что-то могут. Из-за таких лохов в голове обывателя слово «программист» является синонимом понятия «бесплатная компьютерная помощь».

Ведь многие люди не знают, чем на самом деле занимаются программисты и судят об этом по навыкам своих родственников/знакомых. Но разные представители специальности делают абсолютно разные вещи и нельзя говорить за всех.

Эта статья расскажет об основных специализациях программистов, которые наиболее востребованы на российском рынке. Для каждого типа будут указаны организации, где его можно встретить чаще всего и технологии, с которыми ему надо уметь работать.

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

1. Front-end веб-разработчик

Если мы заходим на сайт и там есть кнопочки, которые меняют местоположение и цвет при наведении на них мышкой, то это дело рук front-end разработчика. Он пишет весь код на JavaScript, который выполняется без перезагрузки страницы на стороне клиента.

Где работает?

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

Что делает?

Разрабатывает динамику пользовательского интерфейса. Если в компании нет верстальщика, то еще и переводит PSD-шаблоны в HTML-код.

Технологии

  • HTML и UI фреймворки (Bootstrap, Foundation, Pure);
  • CSS и препроцессоры (SASS/LESS);
  • JavaScript + фреймворки/библиотеки на этом языке (Jquery, ReactJS, AngularJS, BackboneJS);
  • Утилиты для сборки проектов (Grunt, Gulp, Bower).

2. Back-end разработчик

Человек на плечи которого ложиться основное бремя по разработке веб-проекта. Он как бы строит фундамент, на который front-end разработчик прицепляет «декоративные элементы».

Где работает?

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

Что делает?

Разрабатывает “ядро” сайта или веб-приложения: код исполняемый на сервере и архитектуру базы данных.

Технологии

Один из нижеперечисленных языков и фреймворки/библиотеки для него:

  • Базы данных MySQl/PostgreSQL/NoSQL.

3. Full-stack веб-разработчик

Человек, который может сделать сайт любой сложности «от и до».

Где работает?

Чаще всего в стартапах и небольших студиях веб-дизайна. В крупных компаниях содержится в команде наряду с front-end и back-end разработчиками, чтобы контролировать и координировать их работу.

Что делает?

Сайты и веб-приложения. Выполняет работу front-end и back-end разработчика одновременно.

Какие технологии ему желательно знать?

См. списки двух предыдущих типов.

4. Разработчик игр

Очень широкое понятие, которое включает как минимум три крупных категории: разработчик десктопных игр, разработчик мобильных игр и разработчик MMORG.

Где работает?

В игровых студиях.


Что делает?

Какие технологии ему желательно знать?

  • С#/C++/Java;
  • Open GL или DirectX;
  • Один из игровых движков (Unity, Unreal Engine, Torque и другие).

5. Разработчик приложений под Android

Где работает?

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

Что делает?

Разрабатывает приложения под операционную систему Android.

Какие технологии ему желательно знать?

6. Разработчик приложений под iOS

Где работает?

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

Что делает?

Разрабатывает приложения под операционную систему iOS.

Технологии

7. Программист 1C

Многие разработчики не считают язык, встроенный в 1C, языком программирования, а людей, которые пишут на нем, программистами. У них есть на это свои основания. Тем не менее, людей которые называют себя программистами 1C и вакансий для них очень много.

Где работает?

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

Что делает?

Пишет программы для автоматизации документооборота в компании.

Технологии

  • «1С:Управление торговлей»;
  • «1С:Бухгалтерия»;
  • «1С:Зарплата и кадры»;
  • T-SQL.

8. Инженер-программист

Если одним из 7 предыдущих типов можно стать отучившись на курсах или путем самообразования, то инженеров-программистов выпускают только технические ВУЗы. Часто на этих должностях работают люди старше сорока лет, получившие образование в советское время.

Где работает?

На производстве или в научном учреждении.

Что делает?

Разрабатывает программы для управления самыми разными устройствами: от печи на хлебозаводе до робота-пылесоса.

Технологии

Один из нижеперечисленных языков:

+ огромный багаж технических знаний, соответствующий отрасли в которой человек работает.

Если посмотреть объявления о найме программистов на российских сайтах, то 90% из них будут подходить под эти семь типов. На Западе рынок вакансии несколько разнообразнее. Кто интересуется, может зайти на Odesk и посмотреть, какая работа там предлагается.

С грустью замечаю, что 14-летние пакистанцы требуют там за html-верстку от 500 рублей в час.

А судить о том, какие языки сейчас наиболее популярны в мире можно по данным Tiobe Index. Этот рейтинг строится по числу запросов в поисковых системах с упоминанием разных языков программирования.

P.S. Напоследок, жизненный анекдот в тему.

Если бы водителей нанимали на работу так же как программистов:
Вакансия: водитель.
Требования: профессиональные навыки в управлении легковыми и грузовыми автомобилями, троллейбусами, трамваями, поездами метрополитена и фуникулёра, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/средними танками, находящимися на вооружении стран СНГ и НАТО. Навыки раллийного и экстремального вождения обязательны. Опыт управления болидами “Формулы 1″ — приветствуется. Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, бортовых компьютеров, антиблокировочных систем, навигационных систем и автомобильных аудиосистем ведущих производителей. Опыт проведения кузовных и окрасочных работ — приветствуется. Претенденты должны иметь сертификаты Mercedes, BMW, General Motors, а также справки об участии в крупных международных соревнованиях не более, чем двухлетней давности.
Зарплата: определяется по результатам собеседования.

(4.69 из 5, оценили: 13)

9 интересных фактов, которые знают только программисты

Факт 1. Под капотом самых критичных программ, которые вы используете на ежедневной основе (Mac OS X или Facebook) содержится ужасное количество хаков и костылей, которые с трудом уживаются друг с другом. Это как если бы вы разобрали Боинг 747 и увидели, что топливопровод держится вешалкой для одежды, а шасси смотаны изолентой.

Код программ таков, что даже если сайт или программа прекрасно работают и отлично выглядят, то за кулисами всё, что заставляет его работать, состоит из ошибок, ляпов и костылей. Он работает едва-едва и иногда вообще непонятно, почему.
Факт 2. 25% времени в программировании уходит на размышления о том, что пользователь может сделать не так.
Занимает это на деле больше или меньше процентов времени, но каждый раз нам действительно необходимо подумать – а что пользователь может тут сломать. Куда нажмёт, что введёт, и как можно понять то, что мы пытаемся сделать, неправильно. Если бы мы рассчитывали только на себя, у программ было бы слишком много проблем –
ведь мы знаем, как программа работает, а пользователь не знает.
Факт 3. Программист – это не специалист по ремонту компьютеров
Программист работает с алгоритмами и принципами разработки, а не чинит компьютеры. Мы можем понимать, как компьютер работает и как исполняется код. Но это не значит, что мы умеем чинить железо. Мы не знаем, какая проблема в Chrome роняет его на вашем компьютере, или почему ваш компьютер перегревается. Программисты программируют компьютеры, а не чинят их.
Факт 4. Программирование – это размышление, а не печатание
По большей части мы программируем, когда спим, гуляем, смотрим в окно, или делаем что-то ещё, что позволяет нам расслабиться и думать. Расслабление – один из важных аспектов программирования. Нельзя просто сесть и написать тысячу строк кода и вставить их в программу. Нам необходимо посидеть, походить, подумать. Придумать концепцию, исправить её недостатки, решить, как она будет работать… Расслабление – единственный способ, которым мы можем пользоваться для исправления проблем.
Факт 5. Отсчёт начинается с нуля
Это важно. Подсчёт идёт с нуля – ваш 1 это мой 0, ваш 10 это мой 9. Всё из-за необходимости делать вещи эффективно, когда даже небольшая прибавка к эффективности может в масштабе увеличить производительность.
Факт 6. Программировать лучше всего в потоке – в таком состоянии сознания, когда вы сфокусированы на задаче и всё кажется простым. Это состояние знакомо также атлетам и музыкантам.
Программисты любят работать по ночам потому, что это позволяет нам входить поток, сфокусироваться на чём-то одном и не волноваться о том, что нас могут отвлечь. Все остальные просто спят. Это такое время дня, когда никого нет рядом, никто не звонит и не пытается с нами поговорить. Прекрасное время, чтобы думать и программировать.
Факт 7. Иногда полезно отложить проблему до утра
Иногда программистам действительно полезно, встретив сложную задачу, поспать «с ней». Множество раз я встречался с тем, что мне часами не удавалось решить что-то, но после всего лишь 20-минутного сна (или любого другого сна) по пробуждению решение приходило само.
Факт 8. «Родитель» может убить своих «детей», если их задача выполнена
Не та фраза, которую бы хотелось услышать от кого-либо. Но для программистов она звучит не так страшно. Программы часто имеют иерархическую структуру, где родительский процесс контролирует его дочерние процессы, запущенные на уровне ниже.
Когда родительскому процессу больше не нужен дочерний, он его убивает – когда программе больше ничего не надо делать, её выполнение заканчивают.
Факт 9. Вы не впечатляетесь тем, как много мы знаем о компьютерах. Мы не впечатляемся тем, как мало вы знаете о них.
Серьёзно. Хватит уже. Нам неважно, как вы горды тем, что не желаете обучаться новым вещам. Понятно, если вы говорите «я мало знаю о компьютерах» или «мне не интересно программировать» — но когда вы хвалитесь тем, как много вы об этом не знаете, это просто раздражает.
загрузка.

Добавить комментарий