dev.chch
chch's Story
dev.chch
전체 방문자
오늘
어제
  • 분류 전체보기 (21)
    • 공부공부 (11)
      • 워드프레스 (2)
      • 고 (6)
      • 자바스크립트 (1)
      • 기타기타 (2)
    • 일상일상 (10)
      • 부동산스토리 (7)
      • 사담사담 (3)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • golang 순위
  • toy project
  • 중기청
  • 중소기업청년대출
  • 중기청 전세대출
  • 레인보드
  • 워프보드코리아
  • vscode 고정 폭 글꼴
  • 전세 후기
  • toyproject
  • 그냥 중국이 다 가져가라고 하자
  • WordPress
  • 중기청 후기
  • go
  • vscode 글자 간격
  • golang
  • 전세
  • Kboard
  • golang vs python
  • setting-sync
  • 글자 간격
  • 보증보험 후기
  • typesscript
  • 중기청 대출
  • Go언어
  • vscode 터미널 글자 간격
  • vscode
  • xhr_fail
  • 망보드
  • echo

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
dev.chch

chch's Story

golang으로 만들어 본 토이 프로젝트
공부공부/고

golang으로 만들어 본 토이 프로젝트

2022. 5. 23. 23:19

https://github.com/dev-chch/toy-k-job-finder/tree/main

 

GitHub - dev-chch/toy-k-job-finder: 사람인, 잡코리아, 인디드, 인크루트 구직 크롤링 토이 프로젝트

사람인, 잡코리아, 인디드, 인크루트 구직 크롤링 토이 프로젝트. Contribute to dev-chch/toy-k-job-finder development by creating an account on GitHub.

github.com

 

문법 후다닥 공부하고

니꼴라스 강의 보고 golang은 일자리가 몇 개나 되나..

하며 찾아보다가

여기저기 홈페이지 돌아다니는 게 너무 귀찮아서 도전해보게 되었다.

 

https://nomadcoders.co/go-for-beginners/lobby

 

쉽고 빠른 Go 시작하기 – 노마드 코더 Nomad Coders

Go for Beginners

nomadcoders.co

니꼬쌤 갓갓!

 


 

약간 모바일 같은 걸 노리고 만들었으나..

 

하다보니 이게 참..

 

다시금 느끼지만 뭔가 열정을 느끼고 있을 때

쉬지 않고 겁나게 몰아부쳐서 한 번에 뚝-딱 하고 있는 힘껏 노를 저어줘야 된다.

 

안 그러면 끝에 가서 밍기적 거리게 되더라..

 

 


 

사용한 프레임은 Echo를 사용했다.

 

에코는 시작화면이 참 이쁘다.

 

에코 + 템플릿을 사용해서

나름의 컨트롤러(?)와 뷰를 구현해보려고 했다.

 

아마 고수분들이 보시면 매우 우스울 정도의 수준이지 않을까 싶다.

 

잘하시는 분들은 함수 하나 사용하는데 들어가는 비용까지 고려해서 작성하시던데..

 

 

about도 만들었어야 했는데..

 

파일 트리구조는 위와 같다.

 

php, wordpress로만 하고 정확히 mvc로 나눠져있는 spring은 찍먹만 해봤기 때문에

구조가 개판일 수도 있다.

 

근데 뭐..

관리 편하면 됐지..

 

예전에 파이썬으로 크롤링 관련 프로그램을 만들어봤었는데

그때보다 속도도 압도적이고

무엇보다 코드가 알아서 차곡차곡 정리되는 게 너무 좋았다.

 

속도 하나 때문에라도 파이썬은 만지기가 너무 싫었는데..

golang은 속도 걱정은 하나도 안되더라

 

진짜 좋았다.

 

파이썬이 역사가 길어서

라이브러리가 많고, 그게 또 대단한 수준이긴 하지만서도

golang 시간이 지나면 해결되.. 될까?

 

 


 

작성하면서 라이브러리가 부족하다고 느꼈던 지점은

1000 -> 1,000 으로 만들 때였다.

 

php 같은 경우는 내장함수에서 number_format 함수를 사용하면

1000이 1,000으로 뚝-딱 나오는데

golang 같은 경우는

 

func NumberFormat(n int64) string {
	in := strconv.FormatInt(n, 10)
	numOfDigits := len(in)
	if n < 0 {
		numOfDigits-- // First character is the - sign (not a digit)
	}
	numOfCommas := (numOfDigits - 1) / 3

	out := make([]byte, len(in)+numOfCommas)
	if n < 0 {
		in, out[0] = in[1:], '-'
	}

	for i, j, k := len(in)-1, len(out)-1, 0; ; i, j = i-1, j-1 {
		out[j] = in[i]
		if i == 0 {
			return string(out)
		}
		if k++; k == 3 {
			j, k = j-1, 0
			out[j] = ','
		}
	}
}

 

이런 식으로 작성해줘야 했다.

 

사실 이것도 스택오버플로우 형님들의 

손때가 묻은 코드..

 

그럼에도

서버를 api로 만들기에 정말정말정말

간단하고 가볍고

훌륭하다고 생각한다.

 

아직 구조체, 매서드 같은게 익숙하지 않아서

고급지게 코드를 못짜겠는데

더 공부해야지..

 


 

k-job-finder-localhost_8080.exe
10.78MB

 

빌드하면 exe 파일로 나온다.

이거 실행만 하면 뚝-딱

 

실행 후 주소에 localhost:8080으로 하면

동작하는 걸 확인해볼 수 있다.

 

미완성에 가까운 완성이긴 하지만

첫 술에 배부를 생각말고 차근차근..

 

다음은 gin 써봐야겠다.

어쩌면 화딱지 나지만 다시 파이썬으로 연습해볼지도 모르겠고..

저작자표시 (새창열림)

'공부공부 > 고' 카테고리의 다른 글

golang의 Public, Private  (0) 2022.05.09
golang 구조체 전달  (0) 2022.05.09
golang echo stylesheet 불러오기  (0) 2022.05.08
golang echo 템플릿 사용기  (0) 2022.05.08
golang으로 만든 구글의 10가지 오픈 프로젝트  (0) 2020.11.03
    '공부공부/고' 카테고리의 다른 글
    • golang의 Public, Private
    • golang 구조체 전달
    • golang echo stylesheet 불러오기
    • golang echo 템플릿 사용기
    dev.chch
    dev.chch
    dev.ㅋㅋ 웃으면서 개발 공부하기

    티스토리툴바