솔직히 말해서, 아키텍쳐 즉 설계자와 코더, 실무자의 격차는 의사와 간호사 수준의 격차다.


인정할 건 인정해라. 코더들아. 참고로 나도 코더다.


애초에 프로그래밍에 수학이 필요하니 안필요하니 갑론을박하는게 존나 ㅂㅅ이다. 


프로그래밍 언어를 다루는 영역은 존나 광범위하다. 내 분야에서 쓰인다고 모든 분야에서 필요를 하는 것도 아니고,


내 분야에서 안 쓰인다고 다른 분야에서도 안쓰이는 것이 아니다.




코더와 아키텍처의 끊임 없는 갑론을박....솔직히 말하면 코더지망생 vs 아키텍처지망생 이겠지만...


코더 없이 아키텍처들 만으로 소프트웨어를 만들 수 없고, 아키텍처 없이 코더들 만으로 소프트웨어를 만들 수 없다.


설계와 아키텍처, 알고리즘과 수학이 SW산업과 프로그래밍 개발 분야를 보다 효율적이고 윤택하게 만드는 것은 명백한 사실이다.


존나 중요한거 맞다.


근데, 그러한 것들을 통해 발전한 것에 대한 발전과 노하우가 축적된 결정체가 라이브러리와 모듈, 프레임워크이다.


알고리즘이나 설계 공부하는건 솔직히 자기 공부하는 거고...


기존에 있는 것과 똑같은 구조 똑같은 성능의 제품을 만들기 위해 석박사를 쓰지 않는거만 알아둬라.




새로운 아키텍처를 만든다는 것은 바꿔 이야기하면 기존의 아키텍처보다 성능이 뛰어난 것을 만든다는 것이다.


이 중에서 기존의 아키텍처가 퍼블릭하게 쓰이는 것을 프레임워크라고 부르는 거고...


기존의 알고리즘이나 로직 같은 것은 라이브러리나 모듈로 녹아들어 있고 그렇다.


기존의 것을 모르는 상태에서 기존의 것보다 더 빠르고 뛰어난 것을 만들겠다고 설레발 치는 것이 이해가 안된다.


근데...그런...불나방 같은 애들이 너무나 많다.




게임 쪽은 그런 애들이 거의 없는데...게임 쪽으로 비유하자면...


게임 엔진은 한 번도 쓰지 않은 애가 게임 엔진 만들겠다고 설레발치는 것과 같은 의미다.


이는 새로운 것을 만들어야 한다는 쓸 떼 없는 부심에서 비롯된다.


기존에 있는 것을 전혀 모르니, 이걸 개선시키지도 못하는데..뭔 얼어죽을 새로운 것을 만들겠냐.




물론 대기업에서 신규 아키텍처 개발하는 박사님들 많이 계시다.


근데 이 분들 그냥 박사한 것 아니다. 필드 경험 빵빵하신 분들이다.


성능개선이란 이야기는 기존의 비효율적인 부분을 고친다는 의미이고, 당연한 이야기겠지만


기존의 방식이 비효율적인 것을 알아야지만 개선할 수 있는 거다.




솔직히 아키텍처 공부한다는 애들 중에서 웹 프레임워크 내부 로직 아는 애들 얼마나 되냐?


가장 퍼블릭한 프레임워크, 심지어 머한민국에서는 전자정부 프레임워크라고도 불릴 정도로


사실상의 표준 디펙토인 스프링 MVC 로직도 모르면서, 뭔 아키텍처를 논하는지 싶다.


아키텍처와 프레임워크가 무슨 관계인지도 모르는 머리에 똥만 찬 애들은 그 머리로 무슨 아키텍처를


공부하나 싶고.




코더들이 비효율적인 방식에서 벗어나 효율적인 아키텍처대로 만들도록 틀과 뼈대를 제공한게 프레임워크다.


즉 알고리즘이나 아키텍처를 모르는 코더들이 프레임워크를 따라서 만들면, 해당 아키텍처와 알고리즘, 로직을


이용해 개발한 셈이다.


코더가 수학과 알고리즘 지식이 얕다고, 코더가 짠 코딩이 느리고 효율성이 떨어질거라고 생각하지 마라.


그건 80년대, 90년대 수준의 생각이다.




물론 새로운 아키텍처와 프로토콜을 만드는 선각자분들에게는 항상 감사한다.


특히, 최근에 나온 웹소켓은 정말 감명 깊게 공부하고 있다.


근데 그러한 웹소켓이 나올 수 있던 이유는 그 분들이 AJAX의 문제점을 확실히 알았기 때문이다.





누군가는 생산성을 위해 모듈을 공부하는 코더라고 말하지만,


나는... 항상 실용적이기 위해 최신 모듈과 라이브러리, 프레임워크를 공부하는 코더이다.


솔직히 지금 당장은 내가 쓰는 아키텍처 이상의 것을 만들 엄두도 안나고 만들 생각도 지금으로선 없다.


군계일학을 꿈꾸는 치킨집 보다는, 캔터키 할아버지가 되고자 노력을 할테다.