Go не имеет общих типов, но вы можете посмотреть, как sort работает, чтобы найти обходной путь. Что они делают, так это создать такой интерфейс:
type Interface interface {
// Len is the number of elements in the collection.
Len() int
// Less returns whether the element with index i should sort
// before the element with index j.
Less(i, j int) bool
// Swap swaps the elements with indexes i and j.
Swap(i, j int)
}
И теперь для любого настраиваемого типа вы можете создать соответствующий настраиваемый тип коллекции, который можно отсортировать. Алгоритм сортировки должен иметь дело только с целыми числами и булевыми значениями, и поэтому не видит и не заботится о том, каковы основные типы данных.
Современный дизайн C++ Andrei Alexandrescu
Программные инструменты Brian W. Kernighan и P. J. Plauger с большим отрывом имел большую часть эффекта на меня.
Даже при том, что я никогда не программировал игру, эта книга помогла мне понять много вещей интересным способом.
JSP я ветвь это, когда я был полным новичком и взял меня только от знания, что Java существовал надежному члену команды в скором времени
"Объектно-ориентированный Анализ и проектирование с Приложениями" Grady Booch. Я считал это давным-давно, и это показало мне, что могла быть методология к разработке Object Oriented Software. С тех пор много других книг оказали влияние на меня, но этот запустил меня.
Изучение C# 2005 , Jesse Liberty & Brian MacDonald (O'Reilly).
ISBN 10: 0-596-10209-7.
, Когда я сначала сделал переход от процессуального кодекса классика ASP до объектно-ориентированного кода C# в VS2005, эта книга установила меня на правильном пути.
Объекты PHP, шаблоны и практика. http://www.apress.com/book/view/9781590599099
, 'Как быть Программистом: Короткая, Всесторонняя, и Персональная Сводка' Robert L Чтение
Не точно книга, но эссе, но этот был определенно вдохновением для меня, когда я вошел в кодирование. Любимый понятие ввода племени. Стоящий чтения.
Интерпретация Языков Объектно-ориентированного программирования Ian Craig
, поскольку это показало мне, сколько еще было к OO, чем стандартный C++ / идиомами Java
Парадигмы Программирования Искусственного интеллекта: Тематические исследования в языке Common LISP Peter Norvig
я начал читать его, потому что я хотел изучить язык Common LISP. Когда я был промежуточным, я понял, что это было самой замечательной книгой о программировании, которое я считал до сих пор.
Профессиональная книга Excel Development This показала, как подать высококачественные заявки в одной из самых повсеместных доступных платформ программирования.
Это - бросок между Главными Первыми Шаблонами разработки по многим причинам, процитированным выше, и Тестирование Perl: Ноутбук Разработчика, который должен быть одной из библий для любого программиста Perl, желающего записать удобный в сопровождении код.
" Дизайн и Эволюция C++ " Bjarne Stroustrup
Помимо предоставления большого количества фона на C++, это - также долгое исследование компромиссов и проблем дизайна, вовлеченных в крупномасштабную программу.
Я предполагаю, что мы могли спросить , та же вершина оценивала вопрос каждые несколько недель и upmod все те, кто упоминает код, завершенный или Прагматически настроенный Программист .
Не то, чтобы существует что-либо неправильно с ним:-)
эффективный C++ и более эффективный C++ Scott Myers.
Минимизированная Разработка программного обеспечения Mary и Tom Poppendieck определенно один для каждой книжной полки разработчиков
В то время как не строго книга разработки программного обеспечения, я настоятельно рекомендовал бы, чтобы не Заставляли меня Думать! быть рассмотренным в этом списке.
программирование какао для Mac OS X Aaron Hillegass
Я думаю, что завершенный код будет чрезвычайно популярным для этого вопроса, для меня это исправило многие мои дурные привычки и вновь подтвердило мои хорошие методы.
Также для моего образования Perl мне действительно нравятся Лучшие практики Perl от Damian Conway. Perl может быть противным языком, если Вы не используете стиль и лучшие практики, который является тем, что я видел в сценариях, которые я читал (и иногда писал).
мне нравится Главный Первый Ряд, они довольно хороши и легки читать, когда Ваш не находятся в настроении для более серьезных книг стиля.
Это не строго книга разработки, и я полагаю, что упомянул его в другом ответе где-нибудь, но это - книга, я действительно полагаю, что все разработчики должны читать от php до Java разработчикам блока.
Это действительно объединяет то, что находится под капотом в компьютере, почему память не должна быть потрачена впустую и некоторые более интересные части истории вычисления. Это - введение в компьютер и каково это. Это дало мне мою окончательную страсть к низкоуровневому программированию и помогло мне понять указатели и память больше, чем какой-либо другой компьютер.
Этот начал меня в истинный OOA& D.
Применение UML и Шаблонов: Введение в Объектно-ориентированный Анализ и проектирование и Итерационную разработку - Craig Larman
Они произошли бы там также:
Применение UML и Шаблонов Craig Larman.
заголовок книги является немного вводящим в заблуждение; это заключает сделку с UML и шаблонами, но это покрывает настолько больше. Подзаголовок книги говорит Вам немного больше: Введение в Объектно-ориентированный Анализ и проектирование и Итерационную разработку.
Для меня это было Шаблоны разработки, Объясненные , это обеспечило, 'О, это - то, как это момент работ для меня в отношении шаблонов разработки и было очень полезно при обучении шаблонов разработки другим.
Краткая информация
Scelbi-байта я детально изучал листинги исходного кода в этой книге много раз до, однажды, я внезапно программирование ассемблера grokked 8080.