Учебные библиотеки без книг или учебных пособий [закрыты]
-
21-09-2019 - |
Вопрос
Хотя многие задают вопросы о том, где найти хорошие книги или учебные пособия, я хотел бы придерживаться противоположного подхода.
Я считаю себя программистом начального уровня, готовым перейти на средний уровень.Я написал код на c, c ++, c #, perl, python, clojure, vb и java, так что я не совсем невежественен.
Где я вижу проблему в переходе на следующий уровень, так это в том, чтобы научиться лучше использовать буквально сотни и сотни доступных библиотек.
Я кажусь парализованным, если в книге или учебном пособии нет конкретного примера, который поддержал бы меня за руку, но я часто читаю на различных форумах, где другой программист пытается помочь с вопросом.Он / она просмотрит документы или просканирует доступные классы / методы в своей любимой IDE и, похоже, поймет, что происходит за относительно короткий промежуток времени, даже если у него не было предыдущего опыта работы с этой конкретной библиотекой или функцией.
Я жажду разорвать пуповину, связывающую меня с постоянными поисками и чтением, поиском и чтением, поиском и чтением.Часто нет книги или руководства, а если и есть, то в обсуждении замалчиваются мои конкретные потребности, или приведенные примеры слишком далеки от того пути использования, который я имел в виду, или информация устарела и использует устаревшие компоненты, или сама библиотека вышла из мейнстрима, но по-прежнему вполне пригодна для использования (но никаких документов, книг или руководств, которые можно было бы взять под руку).
Мой вопрос заключается в следующем:В отсутствие книг или учебных пособий, каков наилучший способ получить доступ к новым или незнакомым библиотекам?
Я стремлюсь сократить путь grok, чтобы я мог приступить к занятию тем, что я люблю больше всего - программированию.
Решение
Дайте хорошему программисту руководство, и он быстро во всем разберется.Хорошим программистом делает вас не чтение книг или учебных пособий, а само программирование.Тренируйтесь.Если вы хотите быть лучше и лучше учиться, пишите больше кода.Поставьте перед собой небольшие цели в области программирования или подумайте о создании простого приложения.Чем больше вы пишете, тем лучше в то время как чем больше вы изучаете синтаксис в книгах и руководствах, тем больше эти синтаксисы и практики будут "щелкать". Причина, по которой многие способны "понять, что происходит, за относительно короткий промежуток времени", заключается в том, что большая часть программирования - это просто синтаксис.
Я приведу вам личный пример.Я взял книгу по Objective-C, чтобы разобраться в разработке iPhone.Сидел и читал это все прошлое лето.Я не знал приседаний, когда сел писать приложение, которое разработал в Photoshop.Конечно, идеи уже появились у меня в голове, но у меня пока не было никаких практических знаний, чтобы их реализовать.Сначала синтаксис был для меня крайне запутанным, но у меня большой опыт программирования в целом, анимации и дизайна пользовательского интерфейса, поэтому, как только я "запомнил" синтаксис, код начал течь более естественно.Теперь я могу писать Obj-C довольно плавно без руководства и лучше понимаю, какая задача будет сложной, а какая легкой.
Другие советы
Мой вопрос:Как лучше всего найти новые или незнакомые библиотеки при отсутствии книг или учебных пособий?
Как насчет того, что вы только что сделали:задаете вопрос здесь, на StackOverflow?По моему опыту, на вопросы типа «как выполнить задачу A, B или C с помощью библиотеки X» ответы получают довольно быстро, особенно если это вопросы для начинающих, и независимо от того, насколько эзотерической или устаревшей библиотека может показаться спрашивающему.Фактически, я несколько раз был свидетелем того, как на подобные вопросы отвечал сам разработчик библиотеки.
Даже если библиотека, кажется, уже давно «выпала из мейнстрима», есть вероятность, что здесь, в SO, все еще есть несколько человек, которые используют ее или использовали ее в какой-то момент в прошлом.
Самое главное, вам больше не придется «тратить час за часом на поиск и чтение [...] дискуссий, которые замалчивают [ваши] конкретные потребности, или примеров, [которые] слишком далеки от пути использования, которое [вы] имели в разум», потому что вы можете адаптировать свой вопрос здесь, на SO, к своим личным потребностям.
Библиотеки предоставляют разработчикам набор концепций, специфичных для предметной области, с помощью которых можно решать проблемы, мало чем отличаясь от естественных (разговорных) языков.Сходство глубже:точно так же, как знание большего количества естественных языков облегчает выбор нового, опыт работы с большим количеством библиотек облегчает переход к использованию нового.Здесь нет волшебной пули:чем больше у вас опыта, тем быстрее вы прогрессируете, потому что можете предвидеть, как может выглядеть использование библиотеки для решения задачи.
Кроме того, вот что мне помогает при выборе новой библиотеки:
- рабочие примеры с исходным кодом, например SmartGWT витрина
- небольшой API/простота, например XStream или CvsReader
- высококачественная документация, например, от впадать в спячку
На мой взгляд, лучший способ учиться без книг — начать программировать.Решение стоящих перед вами задач научит вас пользоваться библиотекой.
Если вы хотите проверить, найти или изучить сборку .NET — Reflector.Это бесплатно и очень мощно.