Translate

2018년 7월 28일 토요일

꿈의 입력기 nimf 이야기 17화 - 적은 양의 소스코드

여러분 그거 아십니까?
nimf 는 매우 정교하게 설계되어 있어서 적은 양의 코드로도 많은 일을 합니다.
타 입력기 대비하여 소스코드가 매우 적습니다.

현재 nimf 는 20,949줄입니다.
언어 엔진이 일본어 1개, 한국어 1개, 중국어 2개, 시스템 1개 총 5개의 언어 엔진을 탑재하고 있습니다.

hodong@debian:~/nimf$ cloc .
     163 text files.
     159 unique files.                                         
      47 files ignored.

github.com/AlDanial/cloc v 1.70  T=1.30 s (89.8 files/s, 21418.2 lines/s)
-----------------------------------------------------------------------------------
Language                         files          blank        comment           code
-----------------------------------------------------------------------------------
C                                   45           3529           1707          17107
C/C++ Header                        29            456            750           1970
C++                                  2            147             58            664
make                                28            171             11            621
XML                                  9              0              0            367
m4                                   1             57             50            170
Bourne Shell                         1              9              1             37
Windows Resource File                1              1              0             10
JSON                                 1              0              0              3
-----------------------------------------------------------------------------------
SUM:                               117           4370           2577          20949
-----------------------------------------------------------------------------------


타 입력기들은 언어 엔진이 많죠? 그래서 공정하지 않은 비교일 수도 있습니다.
그런데 !!!!!
텔레그램에 nimf 로 입력하기 위해서는 nimf 를 Qt 와 정적으로 컴파일해야 합니다.
그래서 입력기 소스코드를 텔레그램에 넣어서 컴파일하는 과정을 거쳐야 하는데,
타 입력기들은 수만줄의 소스코드를 텔레그램에 넣고 컴파일하는 반면,
nimf 는 약 2천2백줄의 소스코드를 텔레그램에 넣고 컴파일하면 된답니다.

hodong@debian:~/nimf/libnimf$ cloc client *.c *.h
      19 text files.
      19 unique files.                             
       0 files ignored.

github.com/AlDanial/cloc v 1.70  T=0.13 s (151.9 files/s, 24249.6 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
C                                9            335            189           1618
C/C++ Header                    10            133            180            578
-------------------------------------------------------------------------------
SUM:                            19            468            369           2196
-------------------------------------------------------------------------------


nimf 가 얼마나 정교하게 설계되었는지 짐작이 가시죠!

댓글 4개:

  1. nimf 개발에 힘써주시는 모든 부분에 감사함을 느낍니다. 오픈소스 개발 배포에 따른 노고와 스트레스를 직접 감내 하시는 모습이 존경스럽고요.. 불로깅애 남기시는 글들을 통해서 오픈소스를 바라봐야 하는 시각또한 저 스스로 많이 반성하게 되는 계기가 되었습니다.
    항상 응원 합니다 ^^

    답글삭제
  2. 저도 항상 응원중입니다. 글도 가끔씩 이렇게 적어 주시는 거 늘 흥미진진하게 보고 있습니다.

    답글삭제

응용 어플 끝글자 버그 잡는 거 진짜 개쉽습니다

그 동안 제가 끝글자 버그를 잡지 않고 방치한 이유 우선 책임, 의무가 없습니다. 제가 해당 어플 개발자도 아닐 뿐더러 오픈소스가 원래가 유지보수 의무, 보증 책임이 없습니다 . 이렇게 개떡 같은 게 오픈소스입니다. 전 과거 libhwp 하냐고...