Старая Школа по сравнению с Новыми Школьными проблемами Программистов и/или [закрытыми] Преимуществами

Функции имен символов, включая макросы и общие функции, но не методы. Чтобы однозначно идентифицировать метод, вам нужно знать общую функцию и все применимые модификаторы и специализированные функции.

Например, PRINT-OBJECT называет общую функцию, но недостаточно для обозначения конкретных методов. Однако вы можете перебирать все методы, специализирующиеся на общей функции, и манипулировать их документацией: вместо передачи имени в DOCUMENTATION вы предоставляете объект функции и T. Чтобы сделать это переносимо, используйте close-mop :

(ql:quickload :closer-mop)

Например:

(lambda (generic-function)
  (map 'list
       (lambda (method) (documentation method t))
       (closer-mop:generic-function-methods generic-function)))
=> #

Попробуем:

CL-USER> (funcall * #'documentation)
(NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)

Упс.

CL-USER> (defmethod documentation ((test (eql :test)) _) 
             "Test documentation" 
           "Returned value")
...
CL-USER> (documentation :test t)
"Returned value"

CL-USER> (funcall *** #'documentation)
("Test documentation" NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)

14
задан Joel Coehoorn 9 December 2011 в 15:09
поделиться

12 ответов

Я имел с обеих сторон забор, так сказать.

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

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

Людям или понравится отвечать на вопросы/менторство, или они не будут. Возраст не обязательно имеет большую часть значения. Я работал с людьми, которые старше и моложе, чем я слишком только было несколько человек, которые действительно как ответ на вопросы (были ли они связанным проектом или не).

9
ответ дан 1 December 2019 в 07:00
поделиться

Когда я был правильным из колледжа, я был полуночником, и я прокручусь в работу поздно утром, даже при том, что я оставался опаздывающим в течение многих часов после того, как все остальные уехали. Было действительно трудно создать взаимопонимание с другими людьми. Не было удивительно, что я также чувствовал себя не приветствующимся, когда я пытался задать вопросы или работу совместно.

Даже при том, что Ваши коллеги используют методы водопада, которые считают устаревшими, это не означает, что они работают безрезультатно. Успешный проект больше имеет отношение к работе в команде, чем какая-либо конкретная методология. Гибкие методы шифровали эту идею, но она все еще осуществлена неофициально в любой успешной команде.

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

я также рекомендовал бы против попытка убедить их принять гибкие методы. Вместо этого можно практиковать некоторые гибкие методы фактический . Например, просто попросите, чтобы кто-то смотрел через Ваше плечо для помощи на жесткой проблеме (люди обычно готовы показать свой навык при решении жестких проблем). Вуаля! Вы - парное программирование. Но не называйте его этим! :-)

10
ответ дан 1 December 2019 в 07:00
поделиться

Превосходный вопрос. Я был в этом бизнесе почти 50 годами, и я все еще изучаю вещи.

я предполагаю, есть ли у меня схватывание, случается так, что почти у всех младших программистов были классы в программировании, и их головы были переполнены нормативными решениями. Это напоминает мне о романе Arthur C. Clarke "Город и Звезды", в котором население были ознакомлены со страхом перед выходом наружу пределов города, которые подходили вне причины.

я главным образом выучился самостоятельно (в программировании), и у меня есть знания в других видах разработки. В других видах разработки никакой идеи не боятся как дьявол (т.е. goto) или поднимают до мифического состояния (ООП). Скорее каждая идея имеет за и против и ситуации, в которых она имеет более или менее утилиту. Все основано на математике, и изобретательность оценена.

, В то время как младшие программисты ярки, желают, и энергичны, мне жаль, что они не были более любопытными и непредубежденными.

7
ответ дан 1 December 2019 в 07:00
поделиться

я приношу извинения заранее, если тон этого звучит резким, я на самом деле очень удивлен, поскольку я пишу это, потому что Ваша ситуация происходит все время, т.е. Вы не являетесь первыми для замечания различия между 'новичками и 'пожилыми людьми на работе ;-)

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

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

... и определенно сохраняют Вашу "новую школу по сравнению со старыми школьными" предубеждениями под контролем; если Ваши "стареющие" коллеги (как будто Вы неуязвимы для старения!) чувствуют, что Вы всезнайка "панк", никто не захочет помочь Вам. Действительно не имеет значения, даже если Вы на самом деле знаете все это, никому не нравится панк. ;-)

так симулируют быть скромным в течение первых нескольких месяцев, внимательно слушать и быть готов узнать больше на Вашем первом году реальной работы, чем Вы когда-нибудь учились в колледже!

что касается Ваших конкретных вопросов до сих пор, вот другой способ посмотреть на него:

  • водопад хорошо работает с опытными разработчиками и целью, которая не перемещает слишком быстро
  • , что Вы называете "сотрудничеством", которое я мог бы назвать "прерыванием моей концентрации"; код имеет тенденцию быть написанным наиболее эффективно отдельными программистами, работающими один и непрерывный; непрерывная многозадачность неэффективна
  • , работа во время нормального рабочего времени - то, что делают нормальные сотрудники; привыкните к нему. Существует преимущество для того, чтобы быть в офисе, когда Ваш клиент находится также в офисе. Конечно, существуют также недостатки. Баланс между этими двумя называют "тайм-менеджментом" ;-)

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

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

5
ответ дан 1 December 2019 в 07:00
поделиться

Я не думаю проблемы, с которыми Вы имеете дело, зависимый возраста. Я имел большой опыт с программистами дважды мой возраст и изучил много от них. Обратное верно также.

Когда-нибудь я буду старым программистом, но это не означает, что я должен быть "старой школой".

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

4
ответ дан 1 December 2019 в 07:00
поделиться

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

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

Спрашивают руководителя группы / менеджер для маленького проекта, можно сделать использующие более современные методы (гибкий, могло бы быть трудным сделать сам). Покажите людям, что это работает, и продемонстрируйте, как это лучше.

Быть тактичным и попытаться не расстроить людей. помните "старость, и предательство изобьет молодежь и навык". Не входите в борьбу, которую Вы не можете выиграть. Люди будут сопротивляться изменению.

3
ответ дан 1 December 2019 в 07:00
поделиться

Поскольку всегда это зависит от культуры компании и среды. Если Вы работаете на корпоративной работе, это - открытое 8:00 - 17:00, действительно не имеет значения, если Вы предпочитаете ночи...

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

1
ответ дан 1 December 2019 в 07:00
поделиться

Водопад является примером дефектной, нерабочей модели разработки программного обеспечения. К сожалению, это не кажется, что Вы имеете возможность указывать на это своим стареющим коллегам. :)

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

, После того как Вы находите наставника, я предлагаю, чтобы Вы попытались работать вокруг их расписания по крайней мере некоторое время. Не чувствуйте себя слишком плохо о задавании вопросов, так как это - единственный способ, на котором можно учиться (Google оно или задать вопрос здесь сначала, таким образом, Вы не спрашиваете их также много легких вопросов).

Удачи!

РЕДАКТИРОВАНИЕ: Так как только первые два предложения моего исходного ответа, кажется, становятся считанными, я думал, что должен предоставить еще некоторые ссылки для поддержки то, что я сказал.

Примечание, что последний является исходной статьей Royce.

1
ответ дан 1 December 2019 в 07:00
поделиться

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

я нахожу, что корпоративные интересы помещают намного большую деформацию на попытку правильно использовать гибкие методы. Попытайтесь использовать гибкий, когда Вы получили корпоративного руководителя на Вас говорящий Вам запланировать все задачи и оценить часы для 10 спринтов сразу. При попытке сказать им, что это, вероятно, изменится и нет никакого смысла, вызовет струи гнева. Проблемы как этот заставляют возрастные различия казаться тривиальными.

0
ответ дан 1 December 2019 в 07:00
поделиться

Язык. Я только имею в виду КОБОЛ по сравнению с C#, но также и слова раньше описывали проблемы и решения. Я часто испытывал затруднения в переговорах с программистами КОБОЛа старшего возраста, потому что мы испытываем недостаток в общем языке АВАРИЙНЫХ ЗАВЕРШЕНИЙ, рабочая память (старая школа), методы, автоматизировала поблочное тестирование (новая школа)и многое другое. Как со многими другими проблемами в жизни, "знание является залогом успеха" — после того как Вы распознаете проблему, можно работать для преодоления ее.

0
ответ дан 1 December 2019 в 07:00
поделиться

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

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

Старшие работники больше понимают, как работает корпоративная политика, и лучше понимают правила игры, поэтому они более эффективны в получении того, чего хотят. Имейте в виду, я не говорю, что мое поколение было лучше, когда мы были молоды.

Когда-нибудь вы тоже станете старше и сможете жаловаться на молодых и на то, насколько они хуже, чем ваше поколение. Страшная мысль, не правда ли? т это? (Когда я превратилась в мать? Почему мне еще нет 26?)

0
ответ дан 1 December 2019 в 07:00
поделиться

Наиболее полезен при работе с типами, допускающими значение NULL.

bool? whatabool;
//...
bool realBool = whatabool ?? false;

без ?? вам нужно будет написать следующее, что гораздо более сбивает с толку.

bool realbool = false;
if (whatabool.HasValue)
    realbool = whatabool.Value;

Я считаю этот оператор очень полезным для типов, допускающих значение NULL, но в остальном я не очень часто его использую. Определенно отличный ярлык.

Я с радостью взял бы стажера колледжа, который сосредоточен на обучении и росте (при условии, что они могут правильно работать с логикой), чем любой человек, даже с десятилетиями «опыта», который попадает в категорию №2.

Слишком часто люди не делают этого. хочу поднять этот вопрос. Опыт сам по себе не является описанием того, чего ожидать от результатов. Существует плохой опыт, и разработчики, которые либо попадают в категорию №2, либо постоянно попадают в категорию разработчиков №2, часто вносят в проект худший опыт и более неверные решения, чем разработчик, у которого нет опыта и таких предвзятых мнений.

0
ответ дан 1 December 2019 в 07:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: