우리가 만들어본 웹서비스 실습에는 웹서비스를 지탱하는 기술의 거의 모든 것이 들어있다. 하지만 아직 몇 가지 부족한 점이 있는데 아래와 같다.
- 추가
- 삭제
- 수정
- 로그인
- 모바일
이제부터는 단순히 따라 하는 것에서 벗어나 스스로 문제를 해결해보자. 과제의 하위 수업에서는 각각의 기능을 구현하기 위해서 필요한 최소한의 가이드와 그것을 위한 지식들을 제시한다. 각 과제의 말미에서는 필자가 만든 코드를 제공하고 있기 때문에 자신이 만든 것과 비교해 볼 수 있을 것이다. 가급적 스스로의 힘으로 해결하고, 버겁다면 자신을 너무 괴롭히지 말고 필자의 소스를 분석하자. 어려운 것이 당연하다.
사족
필자에게 있었던 일이다. 한번은 일주일 동안 문제가 풀리지 않아서 아무것도 못 하고 화면만 보고 있었다. 일주일 만에 문제를 해결했는데 그것이 사소한 문제 때문이라는 것을 알았을 때의 허탈감이란 치명적이었다. 하지만 놀랍게도 코드가 국어처럼 느껴지기 시작했다. 필자의 가설이 있는데, 아무것도 하지 않는 동안에도 우리의 뇌는 끊임없이 동작하고 있어서 아무것도 하지 않고 있는 것 같은 그 순간에도 우리의 뇌는 쉬지 않고 코드의 실루엣, 로직의 흐름, 각종 명령어들을 내 안으로 받아들인다. 이 과정에서 프로그래밍의 밑천이 생기는 것이다. 그래서 술술 잘 풀리는 실습은 별로 도움이 안 된다. 실력은 안 풀리는 문제에 직면했을 때 높아진다. 그런 점에서 난관은 반가운 것이다. 이 시간을 견딘다면 다음 계단에 오를 수 있기 때문이다.