Java (4) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Design Pattern] Factory Method Pattern Factory Method Pattern ํจํด์ ๋ถ๋ฅ : ์์ฑ ํจํด ํจํด์ ๋ชฉ์ : This pattern defines an interface for creating an object, but let subclasses decide which class to instantiate. Factory method lets a class defer instantiation to the subclasses. – GoF – ํจํด์ ์ ์ฉ ํ์ฅ ๊ฐ๋ฅํ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ ์ ์์ ๊ตฌํ ๊ด์ ์์ ์ด๋ค ์ข ๋ฅ์ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ง ๋์ค์ ๊ฒฐ์ ํ ์ ์๋๋ก ํด์ค ๊ฐ์ ์์ ํ์ ์ ๊ฐ์ง๋ ์ฌ๋ฌ ์ข ๋ฅ์ ๊ฐ์ฒด๋ฅผ ์์ฑํด์ผ ํ๋ฉฐ, ์ด๋ค์ ์ฃผ๋ก ์์ ํ์ ์ ํตํด ์ข๊ฐํ ๊ฒฝ์ฐ ๋ถ๋ชจ ํด๋์ค๊ฐ ์๋๋ผ ์์ ํด๋์ค๊ฐ ์ด๋ค ์ข ๋ฅ.. [Java] txtํ์ผ ์ฝ๊ณ ์ฐ๊ธฐ txt ํ์ผ ํ์ฑ ํ ์ค๋ณต count BufferedReaer BufferedReader br = new BufferedReader( new FileReader("C:\\Users\\hae85\\Downloads\\yongin40_before_41.txt") ); Collections.frequency Set set = new HashSet(list); Set set = new HashSet(list); for(String str : set){ sb.append(str + " : " + Collections.frequency(list, str)).append("\n"); } result.txt์ ํ์ผ ์ฐ๊ธฐ File resultFile = new File("C:\\Users\\hae85\\Downloads.. [OOP] ๊ฐ์ฒด์งํฅ ์ค๊ณ ์๋ฆฌ ๊ฐ์ฒด์งํฅ ์ค๊ณ ์๋ฆฌ 1. SOLID SOLID๋ ๊ฐ์ฒด์งํฅ ์ค๊ณ ์๋ฆฌ ์ค ๊ฐ์ฅ ์ค์ํ ๋ค์ฏ๊ฐ์ง ์๋ฆฌ SRP(Single Responsibility Principle), OCP(Open-Closed Principle), LSP(LIskov Substitution Principle), ISP(Interface Substitution Principle), DIP(Dependency Inversion Principle)๋ฅผ ๋งํ๋ค. 1.1 SRP ๋จ์ผ ์ฑ ์ ์๋ฆฌ A class should have only one reason to change. ์ํํธ์จ์ด์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์ค๊ณ ์๋ฆฌ ์ค ํ๋๋ ๋ชจ๋์ ์์ง์ฑ์ด ๋์์ผ ํ๋ค๋ ๊ฒ์ด๋ค. (high-cohesion) ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์์ ๊ธฐ๋ณธ ๋ชจ๋์ ํด๋์ค์ด๋ค. SRP์.. [OOP]๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ 1. ์ญ์ฌ ๊ฐ์ฒด์งํฅ(OO, Object-Oriented) ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ ์ง๋ฐฐ์ ์ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์๋ฆฌ์ก๊ธฐ ์ด์ ์ ๋๋ฆฌ ์ฌ์ฉ๋ ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ FORTRAN, COBOL ๋ฑ์ด๋ค. C ์ธ์ด๋ 1972๋ ์ Bell Labs์ Dennis Ritchie๊ฐ ๊ฐ ๋ฐํ ๋ฒ์ฉ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค. C ํ์ค์ 1983๋ ์ ์์๋์ด 1988๋ ์ ์ฒ์์ผ๋ก ํ์คํ๋์์ผ๋ฉฐ, ์ด๋ฅผ ANSI C ๋๋ ISO C๋ผ ํ๋ค. ๊ทธ ์ดํ C99, C11์ผ๋ก ํ์ค์ด ์ผ๋ถ ๊ฐ์ ๋์๋ค. C ์ธ์ด๋ ์ด์์ฒด์ ๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ์ธ์ด๋ก ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด์ง๋ง ํ๋์จ์ด์ ๋ฐ์ ํ ์์ค์ ์์๋ ํฌํจ๋์ด ์๋ค. ๋ํ ๋น์ ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ด์ฉํ์ฌ ๊ฐ๋ฐํ๋ ์์ฉ์ด ๋งค์ฐ ์ ํ์ ์ด์๋ค. ์ง๊ธ์ 4์ฐจ ์ฐ์ ํ๋ช , .. ์ด์ 1 ๋ค์