Каковы некоторые из общих задач программирования, с которыми вы работаете в реальном мире? - PullRequest
11 голосов
/ 20 октября 2008

Я работаю над составлением списка всех общих задач программирования, с которыми любой обычный разработчик работает в реальной разработке приложений. Код, с которым вы работаете в большинстве обычных LOB-приложений несколько раз. Даже если это не так часто, и вы считаете, что стоит добавить его в список, сделайте это.

Позвольте мне начать с:

  1. Чтение текстового файла с диска, загрузка его в строку
  2. Сохранение строки в текстовом файле
  3. Сериализация бизнес-объекта в XML
  4. десериализация XML из строки и / или диска в бизнес-объект
  5. Проверка строки XML по схеме XSD

Теперь твоя очередь.

Обновление : Позвольте мне сказать, почему я хочу этот список. Я хочу создать удобный справочник по очень эффективному коду для каждой из этих задач, когда у меня будет значительное количество задач. Потому что каждый раз, когда я пишу код для выполнения одной из этих задач, я могу просто ссылаться на свою ссылку на код. Я не хочу, чтобы мой код был разным в разных местах. Мой шаг 2 - написать эффективный и элегантный код для всех этих задач.

Полагаю, мне следовало написать это в блоге. Так ли это неправильное место для этого?

Ответы [ 15 ]

11 голосов
/ 20 октября 2008

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

Есть замечательная идея этого, написанная парнем по имени Дейв (я смотрел, я не могу найти, это фамилия) под названием CodeKata . Это различные упражнения, которые помогут вам лучше понять принципы и теории программирования.

Вещи как они покрыты там.

Вот и мой собственный список предметов.

  • Узнайте, как использовать массивы (особенно, как уменьшить их недостатки)
  • УЗНАЙТЕ РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ КАК МОЖНО СКОРЕЕ! если вы даже станете помощником регулярных выражений, вы будете FAR впереди стаи .
5 голосов
/ 20 октября 2008
  • Доступ к базе данных, CRUD
  • SOAP / Веб-сервисы
  • Сортировка, поиск и другие манипуляции с коллекциями объектов

Это первое, что приходит на ум.

4 голосов
/ 23 октября 2008

Запрос пользователя на ввод. Извлечение ввода. Проверка на тип: это число? Это свидание?

3 голосов
/ 21 октября 2008

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

2 голосов
/ 24 октября 2008

Возьмите электронную таблицу (csv или xls), проанализируйте ее, проверьте, сохраните в базе данных.

2 голосов
/ 23 октября 2008

Выборка / Обновление данных в базе данных. Подтверждение формы

Обе задачи чрезвычайно скучны, но я бы сказал, что они занимают около 50% или более времени моего кодирования на работе.

2 голосов
/ 21 октября 2008
  1. Debugging
  2. Отображение результатов отладки через монитор разработчика, IDE или электронную почту.
2 голосов
/ 20 октября 2008

Аутентифицировать пользователя, когда он / она обращается к странице / ограниченной части программы

2 голосов
/ 20 октября 2008

Получать данные из базы данных клиенту, разрешать пользователю редактировать (добавлять / обновлять / удалять) данные, возвращать данные в базу данных.

1 голос
/ 26 февраля 2019

Я веб-разработчик, поэтому возьмите их с крошкой соли.

Для некоторых распространенных задач / тем / концепций, которые мне нравятся, когда я чувствую себя комфортно на любом языке программирования, которым я владею, и с какой частотой мне приходилось их использовать, рассмотрим следующие пункты:
(низкий, средний, высокий) для частоты необходимости

  • Использование API или веб-службы (REST / SOAP) (высокая)
  • Создание веб-сервера (низкий уровень)
  • Создание / поддержка REST API (операции crud, взаимодействующие с базой данных) (высокий)
  • File I / O - обработка CSV, электронных таблиц и т. Д. (средняя)
  • IPC (межпроцессное взаимодействие) / процессы / демоны - порождение дочерних процессов, манипулирование / управление дочерними процессами, перенаправление stdin, stdout и / или stderr дочернего процесса, обработка прерываний ( низкий)
  • TCP-сокеты или веб-сокеты - как сокет сервера, так и сокет клиента (низкий уровень)
  • Потоки - создание и запуск нового потока, операции с потоками, синхронизация, связь между потоками, взаимоблокировка (если применимо на выбранном вами языке) (низкий уровень)
  • Шаблоны проектирования (в зависимости от вашего языка) (высокий)
  • Автоматизированное тестирование - Единица / Функциональность / Интеграция / Сквозная (высокая)
  • Cron Jobs - создание и планирование (high)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...