Как создаются компьютерные программы Как создаются компьютерные программы
7 минут - 15.04.2019, 11:54
Как создаются компьютерные программы

Как создаются компьютерные программы

7 минут - 15.04.2019, 11:54

Microsoft Word, instagram, банковские информационные системы - это все программы, построенные по общим принципам.

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

Кратко о коде.

Любая программа состоит из файлов, в которых в каждой строке записаны команды - показать список друзей, посчитать задолженность по кредиту, удалить комментарий и т.д. Команды записываются в коде на каком-нибудь языке программирования. Компьютер читает эти файлы и узнает, что нужно сделать. Для разных типов программ существуют разные языки программирования - одни языки для мобильных приложений под iphone (языки swift, ObjectiveC), другие под android (язык java), третьи для разработки сайтов (php, java, ruby), четвертые для настольных приложений как текстовый редактор (c++,java).

Вот так выглядят две строки кода которые считают общую стоимость товаров в корзине (на java):

for(int i = 0; i < products.size();i++)
totalCost += products.get(i).getCost();

строка отображения в браузере кол-ва товаров в корзине (на html):

<div class="pull-right label label-danger">3 </div>


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

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

Проанализировав сайты с it вакансиями например hh.kz, Вы увидите, что наиболее популярные требования к кандидату - знание языка java или php. Затем, сравнив зарплаты по каждому из этих языков, можно увидеть, что за java готовы платить больше чем за php. Такой же вывод можно сделать, если посмотреть соответствующие аналитические статьи, которые показывают зависимости зарплат от знаний языков программирования (https://www.superjob.ru/research/articles/111800/samye-vysokie-zarplaty-v-sfere-it/).

Выбирайте язык java и Вы станете высокооплачиваемым специалистом.

Про инструменты программиста.

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

Во первых - среда разработки (на англ IDE) (eclipse - бесплатная, netbeans - бесплатная, intellijidea - есть бесплатная версия) - навороченный текстовый редактор, в котором записываются строки кода. Если где то опечатались или пропустили скобку текстовый редактор подскажет, что есть ошибка. Конечно код можно писать и в блокноте, но это менее удобно.

Во вторых - система контроля версий (на англ CVS) (git, svn - обе бесплатные) - программа, которая фиксирует изменения кода каждого программиста в комманде. Чаще всего над разработкой одной системы работает комманда программистов и им необходимо фиксировать кто какой код и какие файлы поменял (так легче понять кто допустил ошибку и как вернуть изменения обратно). Также легко обмениваться между собой проделанной работой - без CVS пришлось бы флешкой переносить измененные файлы от компьютера к компьютеру что неудобно.

Каждый программист обязан овладеть одной из сред разработки и системой контроля версий.

Как организовывается работа программистов.

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

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

Как чаще всего: всю вышеописанную работу выполняют программисты - и с заказчиком общаются, и пишут код, и тестируют и сервера настраивают.

Примеры кода программ и то, как работают в IT некоторые вещи Вы можете увидеть на моей странице в инстаграм itholiday.kz


Menu
×