book_lover 2024. 3. 16. 08:17
좋은 프로그램, 휼륭한 프로그래밍, 완벽한 프로그래밍 언어에 대해서 "자바스크립트"를 이용하여 전달하고 싶었던게 아닐까라고 저자는 주장한다.즉 더글러스 크락포드의 철학을 담은책

 

프로그래밍 언어를 설계할 때 가장 중요한 목적은 그 언어가 분명하고 논리적이어서 구성이 잘 되고, 이상한 코너 케이스가 없어야 한다는 것이다.

  • 코너 케이스 : 전혀 예상하지 못한 환경이나 입력 데이터 등으로 인해서 프로그램에 문제가 발생하는 경우를 의미, 코너 케이스는 문제가 발생하는 환경을 동일하게 재현하기 어려워 디버그가 힘들다.
  • 에지 케이스 : 데이터가 기대하는 범위의 최소 또는 최댓값일 때 프로그램에 문제가 발생하는 경우를 의미, 예를 들면 정수를 처리할 때, 정수의 최댓값을 처리하는 도중 프로그램에 문제가 생기는 경우이다.

기능들에 얽매여 공부하고 연습하는 것보다 읽기 쉽고, 유지보수가 용이하며, 에러가 없는 프로그램을 만드는게 중요하다. 이따금 유용하지만 때떄로 위험한 기능과 안전하면서 더 나은 다른 기능이 있다면, 항상 더 나은 다른 기능을 사용해야 한다.

  • 버그 가능성이 있는 기능은 최대한 피한다.
  • 더 작고 더 낮게 만든다.
  • 어떤 방법이 좋고, 나쁜지 끊임없이 생각하고 다듬는다.

ECMAScript 표준을 읽어 보는게 좋다.

커뮤니티는 "동일한 신념"을 가진 사람들을 중심으로 구성되며, 그 신념이 잘못된 것이라 하더라도 커뮤니티의 구성원에게 큰 이익을 제공한다. 그 신념에 누군가 의문을 제기할 때 커뮤니티는 큰 위협을 받는다 생각한다.