고양국제고

GTT 6 개발 스토리 #2: Conet이 돌아왔어요!

카루-R 2022. 8. 4. 20:27
반응형

환영합니다, Rolling Ress의 카루입니다.

 

[셰어텍] 15. Conet을 소개합니다!

환영합니다, Rolling Ress의 카루입니다. 창의진로프로젝트가 끝났습니다. 이건 저희의 흑역사. 저희가 개발한 '재능 거래 플랫폼', Conet 광고 영상입니다. 그동안 우리 셰어텍 모두 고생 많았습니다

karupro.tistory.com

작년 창진프 "셰어텍"에서 만든 공유경제 플랫폼, Conet이 드디어 실물 프로그램으로 구현됩니다. 기본적인 기능만 갖추어 GGHS Time Table 6에 내장될 예정이며, GTD와 비슷한 형태를 띄고 있습니다.

자세한 설명은 생략하고, 개발 과정만 보도록 할게요. 처음엔 제가 SQL에서 에그(화폐)를 smallint로 저장하고 C# 에서 uint? (Nullable<uint>)로 받았는데, 이게 화근이었습니다. 애초에 smallint는 short에 대응되는 데다, SQL의 NULL과 C# 의 null은 분명 다른 형식의 다른 값이기 때문입니다. 값이라고 표현하기도 뭐하지만.. 쨌든 SQL NULL의 제대로 된 사용법은 이렇습니다.

// item이 SQL의 NULL 값을 담고 있다고 쳐봅시다. item == null // false item is null // false item == System.DBNull.Value // true

DBNull 클래스의 Value 필드를 이용해야 합니다. 저처럼 null과 비교해서 헛다리 짚는 일이 없도록 하세요. 저것 때문에 몇 시간을 날린 건지..

GTT 5와 하위 호환성 때문에 내부적으로 메이저 버전을 중요하게 관리합니다. 그래서 예전에는 GTT 5 베타 때 내부 버전을 막 4.6283.XXXX 이런 식으로 올려왔었는데(...), 지금은 바로 6.0.0으로 올렸습니다. 대신, 정식 출시를 6.1.0으로 하려고 해요. 그 전까지 소규모 수정 사항이 있는 경우 패치 버전을 올리는 식으로 만들 겁니다. 그래서 Conet이 들어간 지금은 +0.0.1 해서 V6.0.1.

1 에그는 100원입니다. 참고로 지금은 그냥 제 계정에 500 에그를 넣어놨습니다. (개발자들은 자신이 만든 프로그램 안에서 신과 같은 존재가 됩니다.. 꽁돈 5만원이 생긴 셈? 그걸 악용한 게 스캠코인이죠.) 여튼, 저렇게 도움이 필요한 사람들이 도움을 요청하거나 내가 줄 수 있는 도움이 있는 경우 자유롭게 게시할 수 있습니다. 첫 실행 시 회원가입을 유도하기에, 바로 계정을 생성해서 쓸 수 있어요. 다만 비밀번호는 잊어버리면 답이 없습니다. AES-256 알고리즘으로 암호화해서 저장하기 때문에 저도 몰라요. 그래서 비번을 잊으신다면 제게 직접 찾아오셔야 합니다. 그래야 제가 서버에서 당신의 정보를 삭제하고 다시 회원가입을 할 수 있으니까요. 번거롭더라도, 어쩔 수 없습니다.

참고로 Conet 로고도 다크모드를 지원합니다. 오늘은 이걸로 마무리할까요.

반응형