-
[PHP] CodeIgniter4 Controllers 알아보기Programming/프로그래밍 2021. 5. 1. 21:32
CodeIgniter 4.1.1 의 컨트롤러 분석 심심해서 해보는 거라 그냥 참고만 하면 될 듯 싶다. 하지만 피드백을 주신다면 항상 감사합니다. 코드이그나이터는 컴포저로 파일을 받아와서 rewrite.php를 시작으로 index.php 를 불러온다. index.php // Valid PHP Version? $minPHPVersion = '7.3'; if (version_compare(PHP_VERSION, $minPHPVersion, 'run(); public/index.php의 모든 부분이고 상세한 건 더 봐야겠지만 여기서부터 $app->run() 부분에서 실제 어플리케이션이 시작되는 것 같다. $app->run()의 내부로 들어가게 되면 아래와 같은 코드들을 확인할 수 있는데 꽤 알기좋게 잘 만들어..
-
[PHP7] VSCode XDebug 사용Programming/프로그래밍 2021. 1. 15. 00:24
전에 깔려있던 7. 대 버전을 8.대로 모두 올렸다. 코드 작업은 따로 하지 않았기 때문에 편하게.. 모두 전반적으로 설정한 뒤. XDebug를 사용하기 위해 설치해주어야 하는 파일이 있다. https://xdebug.org/wizard Xdebug: Support — Tailored Installation Instructions Installation Wizard This page helps you finding which file to download, and how to configure PHP to get Xdebug running. Please paste the full output of phpinfo() (either a copy & paste of the HTML version, the HT..
-
객체 생성 : 팩토리 메서드 ( Factory Method )Programming/패턴 2020. 11. 9. 02:42
의도 객체를 생성하기 위해 인터페이스를 정의하지만, 어떤 클래스의 인스턴스를 생성할지에 대한 결정은 서브클래스가 내리도록 함. 문제 물류 관리 어플리케이션을 만들었다고 생각하자. 현재 트럭으로만 움직이기 때문에 트럭 클래스를 생성해서, 코드의 대부분은 트럭 클래스 내에서 움직이고 있음. 하지만, 어플리케이션이 꽤나 유명해져서 해상 운송 회사에서 배로 운송하고 싶은 수단을 추가하여 만들어달라고 요청이 들어옴. 이럴 때 코드베이스 전체를 뒤집어야하는 현상이 있으며, 다른 수단이 또 추가될 때마다 교통 객체의 클래스마다 동작 조건을 바꾸어 주어야 하며 코드 또한 유지하기가 점점 힘들어진다. 결과 Product는 객체의 인터페이스를 정의함. ConcreteProductA, B는 Product 인터페이스에 정의된..
-
[Python] 함수Programming/프로그래밍 2020. 10. 1. 14:16
함수를 사용하여 간단한 계산기를 작성해보았다 두자리를 입력받아서 만드는 간단한 계산기이다 def minus(a, b): return a - b def plus(a, b): return a + b def mul(a, b): return a * b def div(a, b): return a / b def neg(a): return -a def power(a, b): return a ** b def remainder(a, b): return a % b a = int(input("input A : ")) b = int(input("input B : ")) p_rst = plus(a, b) m_rst = minus(a, b) mul_rst = mul(a, b) div_rst = div(a, b) neg_rst =..
-
객체 생성 : 프로토타입 패턴 ( Prototype Pattern )Programming/패턴 2020. 9. 26. 16:57
정의 원형이 되는 인스턴스를 사용하여 생성할 객체의 종류를 명시하고, 이렇게 만든 견본을 복사해서 새로운 객체를 생성 왜 사용해야 할까? 객체가 이미 존재하고 그 객체의 복사본을 만들고 싶을 때 사용한다. 그러면 새로운 객체를 만들 때 모든 필드를 확인하고 해당 값을 새 객체에 할당하는 것은 좋은 생각이긴 하지만, 일부 필드가 private이고 객체 자체가 외부에서 보이지 않을 수 있는 이유로 모든 객체를 복사할 수 있는 것은 아니라고 한다 모든 객체에 대한 공통 인터페이스를 선언하고 이 인터페이스를 통해서 객체의 클래스에 연결하지 않고 객체를 복제한다. clone 함수를 구현함으로써 이전 객체의 모든 필드 값을 새 객체로 전달하는 역할을 한다. 실생활에서의 프로토타입은 다양한 테스트 및 빠른 결과물을 ..
-
[Python] 데이터형Programming/프로그래밍 2020. 9. 23. 11:56
간단한 Python 데이터형 실습을 해보았다. 특별히 어려운 건 없었으며 아래에서 참고가능하다. https://docs.python.org/3/contents.html Python Documentation contents — Python 3.8.6rc1 documentation docs.python.org 변수와 리스트, 튜플, 딕셔너리에 대해서 간략하게 알아보았다. repl을 이용하여서 진행을 하였다, https://repl.it The collaborative browser based IDE Repl.it is a simple yet powerful online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in ..