Каково различие между “Архитектором Решений” и “Архитектором Приложений”? [закрытый]

Строгие правила псевдонимов не заботятся о промежуточных приведениях. Они заботятся только о типе указателя, который в конечном итоге используется для доступа к объекту, и об исходном типе самого объекта (технически это «эффективный тип», но это сейчас не важно).

В вашем примере кода вы берете адрес int. Результат имеет тип int *. Вы приводите этот указатель к char *, вы снова приводите его к int *, и только тогда вы разыменовываете его. Тип указателя, используемого в доступе, - int *, а тип объекта, на который указывает объект, - int, поэтому строгие правила наложения имен не имеют проблем.

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

char x[sizeof(int)] = { 0 };
*(int *)x = 1;  // undefined behavior

int y = 1234;
*(char *)y = 0; // valid; value of y becomes unspecified

Теоретически, приведение между двумя типами указателей может потерять информацию, но не при приведении из другого типа к char * и обратно. Кроме того, это относится только к компьютерам, с которыми вы вряд ли столкнетесь в наши дни. Я не могу вспомнить пример.

92
задан WhiteKnight 5 May 2012 в 17:17
поделиться

11 ответов

1/5/2018 Обновления - за прошлые 9 лет, мои взгляды значительно развились по этой теме. Я склонен жить немного ближе к новейшему в нашей промышленности, чем большинство (хотя, конечно, не раздвигая границы почти так же как много действительно умных людей там). Я был архитектором на переменных уровнях из приложения, к решению, к предприятию, в нескольких компаниях, крупных и небольших. Я пришел к выводу, что будущее в нашей технологической промышленности является тем главным образом без архитекторов . Если это будет звучать сумасшедшим Вам, ожидайте, то несколько лет и Ваша компания, вероятно, нагонят, или Ваши конкуренты, которые понимают, что она догонит (и передача) Вас. Фундаментальная проблема состоит в том, что "архитектура" - ничто более или менее, чем сумма всех решений, которые были приняты относительно Вашего приложения/решения/портфеля. Таким образом, заголовок "архитектор" действительно означает "решающий блок". Это говорит много, также тем, что это не делает , говорят. Это не говорит "разработчика". При создании карьеры / иерархия, которая неявно говорит людям, "создающим", ниже, чем "решение", и "решающие блоки" не непосредственно ответственны (различием в заголовке) для "создания". Люди, которые все еще держатся за их заголовок архитектора, будут раздражаться из-за этого и выступать, "но я являюсь практическим!" Большой, если Вы - просто разработчик затем, бросают Ваш бессмысленный заголовок и прекращают приниматься кроме других разработчиков. Компании, которые подчеркивают "всех разработчиков, являются решающими блоками, и все решающие блоки являются разработчиками", переместится быстрее, чем их конкуренты. Мы используем заголовок "инженер" для всех, и "инженер" означает решать и создавать.

Исходный ответ :

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

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

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

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

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

Примечание : в многочисленных других ответах было сказано, что нет "никакого стандарта" для этих заголовков. Это не верно. Перейдите к любому отделу ИТ компании Fortune 1000, и Вы найдете эти заголовки используемыми последовательно.

два, наиболее распространенные , неправильные представления об "архитекторе":

  • архитектор является просто большим количеством senior/higher-earning разработчика с необычным заголовком
  • , архитектор - кто-то, кто технически бесполезен, не кодировал в течение многих лет, но все еще бросает вокруг их веса в бизнес, делая жизнь трудной для разработчиков

, Эти неправильные представления происходят от большого количества архитекторов, делающих довольно безнадежное дело и организации, делающие ужасное задание в понимании, для чего архитектор. Распространено продвинуть ведущего программиста в роль архитектора, но это не правильно. У них есть некоторое наложение, но не идентичные наборы навыков. Лучший программист может часто быть, но не всегда, идеальный архитектор. Хороший архитектор имеет хороший понимание многих технический аспекты отрасли ИТ; лучше понимание [1 129] бизнес-потребности и стратегии , чем разработчик должно иметь; превосходный коммуникативные способности и часто некоторые навыки управления проектами и бизнес-анализа. Для архитекторов важно держать их руки грязными с кодом и остаться резким технически. Хорошие делают.

234
ответ дан Rex M 24 November 2019 в 06:25
поделиться

В основном в мире сертификаций IT, можно назвать себя примерно чем-либо, что Вы хотите, пока Вы не ступаете на пальцы ног "реальной" профессиональной организации. Например, можно быть "Инженером Решения Microsoft Certified" на визитной карточке, но если Вы пишете волшебную фразу "Профессиональный Инженер" (или P. Инженер) Вы находитесь в неприятностях с законом, если у Вас нет того железного кольца. Я знаю, что существует подобный заголовок для "настоящих" архитекторов, которых я не могу помнить, но, пока Вы не упоминаете, что можно быть "Сертифицированным Cisco Архитектором сети" или подобный.

6
ответ дан James Orr 24 November 2019 в 06:25
поделиться

Нет, у архитектора есть другое задание, чем программист. Архитектор более обеспокоен нефункциональными ("ility") требованиями. Как надежность, пригодность для обслуживания, безопасность, и так далее. (Если Вы не соглашаетесь, рассмотрите этот мысленный эксперимент: сравните программу CGI, записанную в C, который делает сложный веб-сайт, по сравнению с реализацией Ruby on Rails. У них обоих есть тот же функциональный поведение; выбор архитектуры RoR имеет что преимущества.)

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

5
ответ дан pgras 24 November 2019 в 06:25
поделиться

Нет никаких определений промышленного стандарта для должностей Архитектора - Приложение/Система/Программное обеспечение/Разработчик решений, которое все отсылают в целом к старшему разработчику с сильным дизайном и навыками лидерства. Баланс дизайна, стратегии, разработка (часто базовых сервисов или платформ) и управление отличается на основе организации и проекта.

единственная должность "Архитектора", которая действительно имеет другое значение для меня, является "Архитектором Предприятия", которого я рассматриваю как большее количество положения стратегии в сфере ИТ.

4
ответ дан Guy Starbuck 24 November 2019 в 06:25
поделиться

'Архитектор' является заголовком, данным кому-то, кто может разработать несколько слоев приложений, которые сотрудничают хорошо на высоком уровне. Что-либо, что входит в универсальный тип 'архитектора' без определенного типа технологии (т.е. "Решения", "Приложения", "Бизнес", и т.д.) продает, говорят.

2
ответ дан Brandon 24 November 2019 в 06:25
поделиться

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

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

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

1
ответ дан Tim Jarvis 24 November 2019 в 06:25
поделиться

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

1
ответ дан mhenrixon 24 November 2019 в 06:25
поделиться

Написание?

Серьезно, хотя - они - оба должность БАКАЛАВРА НАУК fluffing. "Программист", не достаточно хороший для Вас? Станьте "Архитектором"!

Действительно... Во что прибывает мир?!

Редактирование: Я ясно задел самолюбие некоторых "архитекторов"!

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

В реальной жизни, это просто продает пух.

-8
ответ дан Oli 24 November 2019 в 06:25
поделиться

По моему опыту, когда я консультировался в Computer Associates, маркетинговый крик был, 'продают решения, не продукты. Поэтому, когда мы получили проект, и я должен был надеть шляпу своего архитектора, я буду Архитектором Решений, поскольку я разработал бы решение , которое будет использовать много компонентов, прежде всего, продукты CA, и возможно некоторую третью сторону или вручать кодированные элементы.

Теперь я более фокусируюсь как разработчик, я - архитектор самих приложений, поэтому я - Архитектор Приложений.

Это - то, как я вижу его, однако как был уже обсужден, существует мало в способе назвать стандарты.

0
ответ дан johnc 24 November 2019 в 06:25
поделиться

Когда Ваш заголовок не соответствует на Вашей визитной карточке, потому что Вы носите слишком много шляп, затем кто-то невидимки изящный заголовок для Вас.

, например, управление/Стратегия/Бизнес-аналитик Программированием/IT/Проектом

Другие способы получить заголовок архитектора:

  • Вы проводите больше времени по телефону и в электронной доске, чем Вы делаете на самом деле разработку рабочее программное обеспечение.
  • Вы тратите людей помощи большего количества времени, настроенных Outlook/Entourage, чем Вы делаете на самом деле разработку рабочее программное обеспечение.
  • Вы действительно не настолько хороши из кодера для начала.
-9
ответ дан 24 November 2019 в 06:25
поделиться

Между типами архитекторов есть существенные различия:

Корпоративные архитекторы смотрят на решения для предприятия, тесно связанные со стратегией предприятия. Например, в банке они будут рассматривать ИТ-ландшафт в целом.

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

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

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

5
ответ дан 24 November 2019 в 06:25
поделиться
Другие вопросы по тегам:

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