Понятия в программировании основные

Эти статьи познакомят вас с компьютерами, компьютерным программированием, компьютерными сетями и программированием для Интернета в частности.

Компьютерная организация и архитектура

Языки программирования

  • Какова цель языка программирования?
    • Легче читать и использовать, чем ассемблер
  • Как классифицируются языки программирования?
    • 1ГЛ, 2ГЛ, 3ГЛ и т. Д.
    • Семьи (языки, производные от других языков, вдохновленные ими или связанные с ними)
  • Какой язык программирования я должен использовать?
    • Разные языки для разных целей
    • Разные языки для разных людей

Сеть и Интернет

  • Что такое Интернет?
  • Что такое протокол?
  • На какие протоколы опираются веб-сайты?

    • ARP, TCP, IP (v4 и v6), HTTP, FTP, SSL
  • Что такое Http?
  • Что такое НАТ?

Основные Понятия Программирования

  • Как хранить информацию?
    • Ввести скалярные переменные
    • Оператор присваивания
  • Как я делаю арифметику?
    • Математические операторы (сложение, вычитание, умножение, деление, деление по модулю)
    • Логические операторы (бит-wise and, or, xor, not, maybe shifts)
  • Как мне принимать решения?
    • если…еще если…еще
    • переключатель…чехол
  • Как мне повторить инструкции?
    • делать…в то время как петли
    • в то время как петли
    • для петель
  • Как группировать инструкции?
    • Ввести функции

Основные Концепции Развития

  • С чего мне начать?
    • Дизайн
    • Псевдокод
  • Что такое
    • Итерационный цикл
    • Проектирование, прототип, разработка, техническое обслуживание

    • Подчеркните количество времени и усилий, затраченных на техническое обслуживание
  • Как мне пройти от начала до конца?
    • Дизайн снизу вверх
    • Дизайн сверху вниз

Основные Концепции Веб-Разработки

  • Что мне нужно для написания сайта?
    • Минимум: простой текстовый редактор, FTP-клиент (проводник Windows, командная строка ftp)
    • Бесплатные и условно-бесплатные решения: редакторы WYSIWYG, Eclipse, Notepad++, GUI FTP-клиенты

    • Коммерческие решения
  • Как начать работу с HTML?
    • Что такое HTML и что такое простой пример?
    • Придерживайтесь базового форматирования: p, br, hr, h1…h6, ol, ul, em, strong, a
  • Как мне начать работу с CSS?
    • Что такое CSS и что такое простой пример?
    • Придерживайтесь основных селекторов и свойств (только имена тегов, цвет фона, цвет, семейство шрифтов, стиль шрифта, вес шрифта, оформление текста).
    • Может быть, ввести метку span.
  • Как начать работу с JavaScript?
    • Что такое JavaScript и что такое простой пример?
    • Держите примеры простыми: Hello world, простые арифметические и строковые операции
  • Действительно ли мне нужно понимать математику и физику?
    • Как помогает алгебра? Поиск разных способов сделать одну и ту же математику.
    • Преобразование единиц измерения (em, ex, pt, px, in) и пропорций/соотношений (размер экрана и т. Д.)
    • Конкретные приложения требуют тригонометрии и физики.
    • Теория использует дифференциальное и интегральное исчисление, многопеременное исчисление, математику рядов, иногда высшую математику.
  • Как мне сгруппировать информацию?
    • Структуры, массивы
    • Основные паттерны: очереди, стеки, связанные списки
  • Что такое объектно-ориентированное программирование?
    • Введение в объекты и наследование
    • Частное и публичное
  • Как объединить инструкции и информацию?
    • Объекты
    • Состояния
    • Методы
    • Почему я должен использовать геттеры и сеттеры? (Проверка значения и доступ.)
  • Чем отличается программирование на стороне сервера от программирования на стороне клиента?
  • Как мне уменьшить свою рабочую нагрузку?
    • Инструменты проектирования: блок-схемы, псевдокод, прототипы.
  • Как мне уменьшить свою будущую рабочую нагрузку?
    • Дизайн с учетом технического обслуживания.
    • Читаемый код.
    • Смотрите вперед, планируйте расширение и интеграцию.
    • Менталитет черного ящика: хорошо или плохо?
  • Как я могу работать в команде?
    • Условные обозначения кодирования.
    • Документация и соглашения о документации. (Ввести JavaDoc?)
  • Как мне продвигаться с HTML?
    • Дополнительные теги: таблица (caption, thead, tbody, tfoot, tr, th, td), div, dl/dt/dd, форма (fieldset, input, button и т. Д.), abbr, аббревиатура.
    • Поощряйте документирование.
    • Используйте div для макета, table для табличных данных.
    • Атрибуты: id, alt, title.
  • Как я могу прогрессировать с CSS?
    • Разверните селекторы: класс, идентификатор, потомок, дочерние селекторы.
    • CSS 2.0.
    • CSS-файлы.
    • Поощряйте документирование.
  • Как я могу прогрессировать с JavaScript?
    • Файлы сценариев
    • О. О. П. с JavaScript.
    • Если вы еще этого не сделали, представьте JavaDoc.
  • Как мне достучаться до большинства людей?
    • Разработка доступного веб-сайта.
    • Установление стандартов совместимости.
  • Как начать работу с серверными языками программирования?
    • Каковы преимущества серверного языка программирования?
    • Примеры серверных языков программирования: ASP, ColdFusion, JSP, PHP и др.
  • Что такое SOAP и AJAX?
    • Введение в SOAP и AJAX (и другие подобные технологии или протоколы).
    • Как они используются?
  • Как мне выйти за рамки текста на моем сайте?
    • Добавляйте изображения на свой сайт.
    • Базовый макет (float img и div).
  • Как сделать сайт, который хорошо работает?
    • Основные концепции дизайна.
    • Базовый UX.
    • Включите ссылки на ссылки UX (Nn/g и т. Д.).
  • Что такое плагины и как их использовать?
    • Любое дополнительное программное обеспечение (помимо браузера) — это плагин (PDF, Flash-видео, аудиоплееры).
    • Требования к доступности.
    • Когда их использовать, а когда избегать.

Введение в базы данных

  • Что такое база данных?
    • Введение в базы данных, таблицы, поля и отношения.
  • Что такое SQL?
    • Введение в SQL.
    • Основные утверждения CRUD.
  • Что такое нормализация?
    • Определите 1NF, 2NF, 3NF, 4NF и т. Д.
    • Рекомендую 3NF?
  • Как моя база данных должна отражать мое приложение (или наоборот)?
    • Определите таблицы, как они относятся к O. O. P.
    • Познакомьтесь с представлениями и хранимыми процедурами.

Расширенные Концепции Программирования

  • Что такое шаблоны проектирования и как их использовать?
    • Представьте некоторые общие шаблоны проектирования (синглтон, фабрика, шаблон и т. Д.).
    • Включите ссылки на справочные страницы шаблонов дизайна или полезные книги.
  • Что такое фреймворки и как их использовать?
    • Представьте различные фреймворки, такие как MVC и конкретные примеры.
  • Что такое государственные машины и как их использовать?
    • Внедрите FSMs.
    • Примеры использования FSMS для анализа текста.
    • Примеры того, как FSMS можно использовать для обработки бизнес-логики.
  • Что такое интеграция приложений и как она мне помогает?
    • Определите интеграцию приложений.
    • Примеры импорта, экспорта и несвободных форматов файлов.

Передовые Концепции Развития

  • Что такое сбор требований?
  • Что такое гарантия качества и как мне ее облегчить?
    • Ввести модульное тестирование.
  • Что такое юзабилити-тестирование?
    • Лучшие практики.
    • Включите ссылки на справочные страницы или полезные книги.

Передовые Концепции Веб-Разработки

  • Как я могу прогрессировать с SQL?
    • Введите JOIN, UNION, триггеры, ограничения.
    • Написание более быстрых запросов (бенчмаркинг).
    • Написание более эффективных запросов. Когда использовать SQL и когда использовать серверный код.
  • Есть ли что-то еще в CSS?
    • CSS 3.0.
    • Проблемы совместимости.
  • Что такое Web 2.0?
    • Представьте социальные сети.
    • Представьте браузерные MMORPG.
    • Внедряйте другие веб-приложения (банковские решения, тележки для покупок и т. Д.)
  • Что такое CMS?
    • Блоги, вебкомиксы.
    • Включите примеры сайтов, в частности блоги веб-разработки.
    • Включите примеры программного обеспечения (WordPress, Plogue, Drupal и т. Д.)
  • Что такое jQuery и как его использовать?
    • Преимущества jQuery.
    • Библиотеки и плагины jQuery.
  • Как мне использовать AJAX?
    • Каковы преимущества?
    • Использование JavaScript-фреймворка (например, jQuery) с AJAX.
    • Каковы недостатки? Специальные возможности.
  • Что такое адаптивный веб-дизайн?
    • Представьте RWD и mobile-first design.
    • Включите ссылки на справочные страницы.