2010-08-09 1 views
3

저는 C#/ASP.NET (현재 ASP.NET MVC)으로 수년간 개발 해왔습니다. 나는 100 % 스스로 가르쳤으므로 최선의 방법을 시도한다고 믿고 싶습니다.하지만 ...훈련 된 전문직 수련자와 자기 가르침을 분리하는 것은 무엇입니까?

제 질문은, 스스로 가르친 개발자와 숙련 된 전문 개발자를 어떻게 구분합니까? C#에서 어떤 기술이 진보 된 것이라고 생각하십니까? 스스로 가르친 개발자가 독자적으로 선택하지 않았을 수 있습니까?

업데이트 :

나는 지금까지의 답변을 사랑합니다. 감사드립니다. 여기 내가 찾고 있던 것에 대한 약간의 설명이 있습니다.

당신은 전문 개발자가 독학이 아닌 (보통 처음 배우는 가장 쉬운 것과 이동을 독학) 수 있다는 것을 사용하는 것이 무엇 C# 기능/기술/사용 생각하십니까?

+1

적성과 태도는 매일 밖으로 승리 스스로 가르치 든 전문적으로 훈련을 받았 든간에 종종 슬프게도 둘 다 부족합니다. 그러한 특성은 가르쳐 질 수 없지만 어떤 기술의 특성이든 가능합니다. 주제에 대한 열정을 가지고 항상 새로운 것을 배울 수있는 공예로 취급하고 당신이하는 일에서 개선 할 잠재력이 있다면 당신을 더 멀리 할 수 ​​있습니다. –

답변

2

100 개발자의 경우
, 5는 기술에 대한 열정으로 인해 많은 동기가 부여되며, 자신이 생각하는 것이 무엇인지 가장 잘 알고 있다고 가르쳐줍니다.
다른 5 명의 개발자는 95 명의 개발자를 교육하고 이것이 가장 좋은 기술이라고 생각하는 직원을 대상으로합니다.

모범 사례/기술?
는 IMO이이 확대됨 및 유지 보수 시스템으로 이어질 것으로 알려진 소프트웨어 제품을 개발하는 방법, - 그리고이 방법은 실제 소프트웨어 시스템이 아닌 개발의 경험을 함께 제공 하나는 훈련 과정에서.

// 후기 편집 :

// 주제의 대답에 짧은
-> C# 기업 환경의 모범 사례를?
그들은 CSLA http://www.lhotka.net/cslanet/와 유사한 프레임 워크를 사용하거나 만들거나 같은 기초 개념에서가 사용 프레임 워크 : 비즈니스 엔티티, 비즈니스 요소 또는 비즈니스 오브젝트.
C#에서 더 많은 기능을 가진 -> 아무것도 컨벤션에 포함되지 않습니다. :)

// 긴 지루한 답 :

- 내 배경
나는 170-200 명의 직원으로 회사에 ASP.Net MVC 1.0 일 지금은 같은 회사에서 일하고 있어요 ASP.Net에서 우리는 ERP와 같은 대형 웹 애플리케이션을 꽤 많이 만듭니다. 나는 ASP.Net MVC를 스스로 가르쳤고, ASP.Net MVC에서 일했을 때 경험이 없었던 다른 팀 구성원들에게 작은 훈련을해야했습니다. 내 논리에 의해


,
selft의 thaught는 frelanching 프로젝트 또는 시작 작동하는 개발자이다.
기업 교육을받은 개발자는 100 - 50000 명의 직원이있는 회사에서 일하는 사람으로 잘 통제되고 계획된 회사 환경에서 java/.net을 수행합니다.
당신이 스스로 목을 조른 경우에도 회사에서 훈련을 끝내기 때문에.

// 기술
자체의 thaught이 기술 자체에 대한 자세한 생각에 대해 CARRING하지 : "이 일을 3 년 후 유지 관리가 용이 ​​할 것, 등등이 ... 엔터프라이즈 클라이언트에 대한 좋은입니다 자기 숙련 된 기술자는 항상 최신 기술을 가르쳐야하는 반면 기업의 숙련 된 개발자는 일반적으로 "성숙한 기술"("risc free")에 대해 교육을 받았으며 기업위원회의 모든 사람들은 이것이 여기에 머무를 것이라고 생각합니다. 최소 10 년 ...
그 때문에 기업의 책임있는 PM은 개발자가 프로젝트에서 Inversion of Control Framework - ma ture : P.
그가 큰 프로젝트를 거치지 않았기 때문에 스스로 목 졸려있는 동안 코드 작성에 유혹받을 것입니다.
나는 큰 프로젝트가 50 명의 devs 이상이 필요하고 그것은 일종의 corporationish 인 논리를 계속 간다. Remeber 당신은 당신이 훈련을 얻을 것이다 법인의 자기 thaught 작업 ... 경우

// 프로젝트 및
가 corportate 개발자가 생각하지 않는 생각을 확장, 그는 매우 알고있다 회사에서 생각하고있는 흐름과 실용성.
기업 PM은 항상 확장 성을 생각하고 자기 배운 사람과 같이 생각해야하지만, 부드러운 구조를 가지고 : http://www.aorsi.com/wb/startups_die_for_not_having_customers_so_stop_thinking_about_how_to_scale/

// 코딩 practicess의 조금 :


Corporation :
우리는 X와 Y를 개발하려고합니다. 솔루션 주위에 프레임 워크를 구축하고 싶습니다. CSLA, 비즈니스 엔티티 또는 최악의 비즈니스 구성 요소와 같은 것일 수도 있습니다. 우리는 3-tieers를 만들고 분할합니다. 작업에 관한 프로젝트.
유지 관리에 대해 항상 생각하고 있기 때문에 기업 환경에서이 작업을 수행하고 싶습니다. "프레임 워크에 대한 신규 사용자를 교육하기 위해 개발자 A, B, C가 필요합니다. - 그럼에도 불구하고 당신은 여전히 ​​훈련과 함께 약간의 오버 헤드를 가지고 있습니다 ...
자기 개발 된 개발자 :
tehnology로 직접 다이빙. practicess 코딩


// 훈련 자체 thaught 및 coroporate 모두 동일합니다
예를 들어 ASP.Net MVC
의 크기가 매우 깨끗하고 작은 당신의 controlles을 유지합니다.
TDD는 점점 더 많은 기업 및 개인적으로 사용되는 devs에서 사용되는 frecvent입니다.

+0

독창적 인 프로그래머가 숙련 된 전문 개발자가 사용하지 못하는 C# 모범 사례/기법에 대한 사례가 있습니까? – Chaddeus

+0

좋아, 나는 내 의견을 편집 : P – andreiursan

+0

고마워, 아주 철저히, 많이 감사. – Chaddeus

3

나는 또한 독학적인 개발자이기도하며, 대부분 "자격을 갖춘"개발자들로 구성된 회사로 옮겼습니다. 나는 동료 중 많은 사람들이 내가 함께 일한 최고의 사람들이라는 것을 부정하지 않지만, 스스로 가르치는 것은 나에게 끊임없이 노력하여 자신의 수준을 유지할 수있는 길을 열어 주었다.

내 경험에 의하면 자격을 갖춘 개발자는 프로세스를 더 잘 이해하는 경향이 있습니다. 그들에게는 훌륭한 구조화 된 설계 및 구현 방법이 있습니다.자격을 갖춘 개발자는 보통 자신이 선택한 경험과 자신의 자격에서 얻은 경험을 바탕으로 선택하고 아이디어를 고수하고 자신감을 가질 수 있습니다. 그것은 스스로 가르친 개발자가된다는 것이 나쁜 것이 아니라고 말하는 것이 아닙니다. 내가 만난 자주 가르치는 개발자는 잘 읽히는 경향이 있으며 가장 적합한 솔루션을 찾기 위해 다양한 솔루션을 시도하는 것이 좋습니다.

C#의 어떤 기술에 대해 특별히 숙련 된 전문가가 독학자가 아닐지 모르는 것에 관해서는 실제로 존재하지 않는다고 생각합니다. 그러나 훈련 된/자격을 갖춘 개발자는 디자인 패턴, 데이터 구조 또는 개발 방법론과 같은 것을 더 잘 이해할 수 있지만 독학적인 개발자는 좋은 것을 배울 수 있습니다.

+1

"숙련 된/자격을 갖춘 개발자가 디자인 패턴, 데이터 구조 또는 개발 방법론 같은 것을 더 잘 이해할 수 있습니다"라고 말하면 어떤 예가 있습니까? – Chaddeus

+0

종종 대학 과정은 디자인 패턴 및 개발 방법론 같은 것을 가르칩니다. 이것은 자기 가르친 개발자가 이런 것들을 배우지 않았다는 것을 의미하는 것은 아니지만, 종종 a) 어디서부터 시작해야하는지, b) 좋은 사람들이 없어서이 주제들에 관해 질문 할 수있는 사람이 없다는 것을 의미합니다. 강사에게 그가 말한 것을 쉽게 물어볼 수 있지만, 독학으로는 문제를 공식화하는데 어려움이있는 질문에 대답 할 수있는 사람들을 찾는 것이 더 어려울 수 있습니다. – AshtonKJ

+0

좀 더 구체적인 예를 원한다면 대학에서 사용하는 통신 과정을 진행하는 일부 교과서를 가르쳐 줄 수 있습니다. 그 (것)들 전부에서 아닙니다 그러나 그 (것)들에있는 내용은 모두 단단하다, 모두. – AshtonKJ

1

독학자와 숙련 된 개발자의 차이점에 나타나는 주 패턴은 이론, 사용 가능한 기술 옵션 및 중요한 관련 기술 및 산업 표준에 대한 인식입니다. 독학으로 개발 된 개발자가 숙련 된 개발자와 어울리지 않는다고 말하는 것은 아닙니다. 단지 추세 일뿐입니다. C#과 ASP.NET에 특정한 예는 OO 개념과 다양한 시나리오에서의 적용 방법, 디자인 패턴 적용, 프로토콜 수준에서의 TCP/IP 및 HTTP 이해, PCI-DSS에 대한 지식 및 그 의미에 대한 이해를 포함합니다. 웹 애플리케이션 개발.

+0

이론에 대한 인식을 통해 C#/OO 등의 기능이 있다고 생각합니까? 전문적으로 숙련 된 개발자는 독학으로하지 않는 것을 사용합니까? – Chaddeus

+0

아니요, 죄송합니다. 단지 추세 일뿐입니다. 나는 어떤 주어진 특징을 위해 독학하는 개발자들이 그것을 사용하고 있다고 확신한다. 제가 말하고자하는 것은 모든 사람들이 가진 사각 지대가 있다는 것입니다. 그래서 훈련되고 독학 된 개발자들 모두는 한계가 있습니다. 교육은 관련 지식이 필요할 때 또는 후에 지식 정보가 우연히 발견 될 때까지 특정 사각 지대가 있다는 사실을 알리는 데 도움을줍니다. – Alex

1

자기 taughts은 ..

  • 자기 동기 부여 소프트웨어 개발 될 것이다.
  • 자신의 직업에 열정적이어야합니다.
  • 불평하지 않아도됩니다.
  • 은 웹 및 http 작품 [asp.net mvc을 (를) 요청한 이후로] 어떻게 작동하는지 훨씬 잘 알고 있습니다.
  • 먼저 문제를 해결하지 말고 먼저 올바른 문제를 찾으십시오.
  • 결국 닌자 개발자가됩니다.
+0

나는 스스로 가르쳤다 = 동기를 부여 받았고 일을 끝내기에 충분한 지식을 가진 추세를 보았다. 나는 궁금한데, C#의 어떤 기술/기능이 숙련 된 전문 개발자가 자기 가르친 사람이 사용하지 않을 것이라고 생각합니까? – Chaddeus

-2

전문적인 개발자가 누구 에게든 템플릿과 패턴 등을 제공하도록 가르 칠 수는 있지만 기술 및 자기 학습에 대한 열정을 가진 사람을 가르 칠 수는 없습니다. 자기 학습과 동기 부여는 솜씨에 대한 열쇠 일뿐입니다. 자연스러운 패스트 푸드 (맥도날드 등)

는 자체 개발자 가르쳐 - - 우수한 자연 아니라 요리 집 음식을

예컨대 우리는 음식 =>

훈련 된 전문 개발자를 개발자를 비교합니다.

차이가 있습니까?

+1

롤, 나는 비유하고 싶다. ;) – Chaddeus

+1

두 개가 상호 배타적이지 않음에 유의하십시오. – RedFilter

0

하나는 자기 자신 등

언어, 알고리즘, OO 원칙과 패턴, XP 및 그룹을 기반으로 개발, 사용성 원칙 및 테스트, 프로그래밍 가르 칠 수 그러나 그는 단지 프로그래밍 언어에 대해 배울 것입니다 가장 가능성이 있습니다.

대학에서도 일부 사람들은 프로그래밍 언어에 대해서만 배웁니다.

1

모든 개발자는 독학적인 개발자입니다. 교육 과정을 소개합니다. 대부분의 최상의 교육은 경험을 통해 이루어지며 모든 전문 개발자는 지속적으로 "교육"을받을 준비가되어 있어야합니다. 사실, 많은 직업 게시는 자기 학습을 기대로 명시 적으로 나열합니다.

현실 세계에서 사용되는 다양한 변화하는 기술로 인해 학교가 최신 상태를 유지하기를 기대하는 것은 무리이므로 개념에 중점을 두는 경향이 있습니다. 그러나 패턴과 방법론조차 정적이 아닙니다. "최상의"패턴은 언어 나 프레임 워크 또는 프로젝트 자체에 의존 할 수 있습니다. 개발자는 새로운 개념을 익히거나 학교에서 배운 개념을 재평가하기 위해 적응할 수 있어야합니다.

C#의 경우 일반적인 개체 지향 프로그래밍 방법이 적용됩니다. 나는 C# 자체가 일반적으로 학교에서 가르쳐지는 것은 아니라고 생각하지만, 언어 별 기능은 대개 이미 일반적으로 사용되는 패턴보다 편의성이 뛰어나다. 예를 들어, 프로퍼티는 메소드 쌍일 뿐이며, 이벤트는 옵저버 패턴의 구현 일뿐입니다. 모든 언어와 마찬가지로 식별자 이름 지정 규칙과 같이 커뮤니티에서 사용하는 규칙을 따라야합니다.

당신이 전문 교육에 의해 보호됩니다 몇 가지 주제를 내려다 될 수 걱정하는 경우, 당신은 유튜브 EDU에서 최고 대학에서 전체 강의를 통해 볼 수 있었다 :

http://www.youtube.com/education?category=University/Engineering/Computer%20Science

관련 문제