상세 컨텐츠

본문 제목

프로그래머 도전기 12일차

프로그래머가 될거야!

by Choyee 2023. 9. 9. 00:33

본문

내일이면 주말입니다
프로그래밍을 공부한지 12일째로 곧 있으면 2주가 다 되어가는군요
간단한 프로그래밍도 해보고 html에도 손을 대보고
공부의 영역을 조금씩 확장해나가고 있는 중입니다
현직에서 일하고 있는 친구들이 새삼 대단하다는 생각이 들기도 했습니다
어떻게든 이렇게 저렇게 시도해보면서 배운것들을 십분 활용할 수 있도록
직접 무언가를 만들어보도록 시도해봐야겠습니다


<<오프라인 JAVA 강의>>

 

<함수>
데이터 관련 = 변수, 상수, 배열
함수 = function( ), method( ) => 특정한 기능을 하느 코드 모음(작은 프로그램) = 모듈
함수 형태 = 함수이름( 매개변수 파라미터 ) {
               }
            = void 함수이름( )
            = int 함수이름( )
            = 함수이름( ) {
                   return;
               }
           => 함수의 이름을 호출하여 사용 가능

0



* return이 있는 함수 = 반환 자료형이 있다(int, String 등)
                         - return O 매개변수 여러개
                         - return O 매개변수 한개
                         - return O 매개변수 X
 반환 = 호출한 곳으로 반환값을 보냄

*  return이 없는 함수 = void 함수, 반환 자료형이 없다
                          = 바로 출력

* 변수 - 지역변수(함수 안의 변수) = 메모리의 스택(stack)영역 => 한번 쓰이고 나면 버려짐
                                            스택구조 = first in last out 으로 쌓이고 나가는 구조
          정적변수(static) = 매인바깥에서 선언 => 값을 공유하고 누적 됨
                              = 전역 공간 -> static 키워드를 사용하여 값을 공유

 

01


* 객체 지향 언어 -> 사용자 정의 클래스Class - 변수, 함수, 상수, 배열
                                                      - 가장 큰 자료형

* 함수
사용자 정의 함수
내장 함수  - 수학Math 관련 함수 - 반올림, 버림, 절대값, 무작위수
                                           - ctrl키를 누르고 클릭해서 함수 확인 가능
                                           - Math.abs, Math.round, Math.floor

0


               - random( ) = 무작위, 범위 = 0.0 <= rand < 1.0 => 실행할때마다 값이 바뀜

 

01


               - 날짜Date 관련 함수 - Date, Calendar, LocalDateTime
                                            - 날짜시간 포멧 - Date -> SimpleDateFormat 명령어 사용
                                                                            => "yyyy/MM/dd HH:mm:ss  a"
                                                                - LocalDateTime -> DateTimeFormatter 사용
                                                                                        => "yyyy/MM/dd HH:mm:ss  a"

01

* 자바 문서 = Documentation - java docs
 SQL문서

* 개체 생성
1. new 키워드로 생성하는 방법(static이 없는 클래스)
2. 클래스 이름으로 직접 생성(static이 있는 클래스)

<배열>
* 배열 복사하기
int[] arr1 = {1,2,3,4}
int[] arr2 = new int[4]    => 위의 배열을 복사하겠다는 의미 = 선언
for(int i = 0; i < arr1.length; i++) {        => 복사
arr2[i] = arr1[i];

01234


* 오류처리
try{
   오류가 나지 않은 부분
}catch(Excption e){
  System.out.println("옳바른 입력이 아닙니다. 숫자를 입력해주세요");
}
​​
<프로그램 - jar파일로 만들기>
​프로젝트 -> 우클릭 -> Export -> Runnable jar file
-> main 파일 선택, 내보낼 파일이름 지정 -> finish

 

0

cmd - 명령 프롬프트
cd = 폴더 이동
cd.. = 상위 폴더로 이동
cd c:/ = 루트 폴더로 이동
dir = 목록 보기
md = 새 폴더 만들기​
cd c:/ -> cd jars -> jav -jar calcscore.jar
​​

 

 

<<오프라인 Python 강의>>

 

<예외처리>

* 구문오류 => 터미널, 텍스트 에디터가 오류를 알려준다
              => 오류가 나는 경우 프로그램 실행X
              = 프로그램이 실행되기 전의 오류

* 예외 = 프로그램이 실행되는 도중에 생기는 오류 
* 예외처리 = try : 
                   예외가 발생할 가능성이 있는 코드
                except:
                   예외가 발생했을 때 실행할 코드

01


* 사용자가 직접 예외를 발생시키는 방법
  => raise 구문

0




<웹>

<웹 크롤링>
인터넷 서비스의 정보를 가져와서 필요한 정보만을 추출해 내는 것

* HTML = 웹사이트의 구조를 잡는 언어
* CSS = 꾸며주는 역할

* 태그
<> -> 안에 들어있는 단어들 = 태그
    -> 태그들마다 짝이 있다 = 세트 = 요소 
                                   - 열린태그 <>
                                   - 닫힌태그 </>
    -> 하나하나의 태그에 속성과 값을 넣을 수 있다
    - img 속성 src 값
    -  <div> = 분할을 위한 의미없는 태그
       <div class=name>홍길동</div> = class 라는 속성 부여 = div태그의 별명
       <div id=name>홍길동</div> = div태그에 고유한 아이디의 값을 부여
    - <body></body> => 부모태그
               <>          => 자식태그 = 부모태그 사이에 들어가 있는 태그 들

* 웹 크롤링을 위한 라이브러리
= "requsets & Beautiful Soup"
- requests 라이브러리 -> 터미널에 pip install requests를 입력하여 설치
                                 -> 요청을 위한 라이브러리 = 정보를 받아올 수 있게 해준다
- BeautifulSoup 라이브러리 -> 받은 정보를 문법적 구성에 맞게 재구성해줌
                                   -> 터미널에 pip install BeautifulSoup을 입력하여 설치

 

012

 

 

2023. 09. 08 (금)

 

관련글 더보기