서론최근, CodeIgnitor 1.0 beta & 언더바 템플릿 2개의 고대 유물적인 Framework를 섞어서 하나로 만들어 놓은 요상한 FrameWork 기반의 Legacy PHP Web Application을 Next.Js(Front)와 SpringBoot(Back)으로 분리하며 Converting 작업을 진행하고 있습니다. 컨버팅 작업 자체는 큰 리소스를 요구하지 않지만, 유지보수도 함께 진행해야 한다는 점에서 문제가 발생합니다. 코드 컨벤션이 전혀 지켜지지 않은 과거의 스파게티 코드와 에일리언 코드를 분석하고, 이를 Java Spring 진영에서 재구현하는 과정에서 유지보수 작업이 들어오면 다시 PHP로 돌아가야 하는 반복적인 행위가 이어집니다. 이러한 언어 컨텍스트 스위칭은 작업 효율성과 업..
서론현대 소프트웨어 개발 환경에서는 API(Application Programming Interface)가 중요한 역할을 합니다. API는 다양한 소프트웨어 시스템 간의 상호 작용을 가능하게 하며, 특히 REST API(Representational State Transfer API)와 JSON API는 유연성과 확장성이 뛰어나 많은 시스템에서 채택되고 있습니다. 그러나 많은 기존 시스템에서는 여전히 오래된 형태의 API를 사용하고 있으며, 이를 REST API 및 JSON API로 전환하는 것이 필요합니다. 본 논문에서는 기존 시스템의 API가 REST API가 아닌 일반 Application API임을 분석하고, 이를 REST API 및 JSON API로 전환하는 과정과 장단점을 설명합니다.본론1. ..
서론레거시 프로젝트는 종종 오래된 코드베이스와 기술 부채를 포함하고 있어 유지보수와 확장에 어려움을 겪는 경우가 많습니다. 특히, 데이터베이스와의 상호작용을 위해 PDO를 이용한 SQL 쿼리문 작성 방식은 다양한 단점을 가지고 있습니다. 이러한 문제점을 해결하고, 개발 생산성과 코드 품질을 향상시키기 위해 ORM(Object-Relational Mapping) 도입이 필수적입니다. 본 보고서에서는 PDO 기반 SQL 쿼리문 작성의 단점을 분석하고, ORM 도입의 필요성과 그 이점을 체계적으로 설명하겠습니다.PDO 기반 SQL 쿼리문 작성의 단점1. 코드의 가독성 및 유지보수성 저하PDO를 이용한 SQL 쿼리문 작성은 SQL 문법이 직접 코드에 포함되기 때문에, 코드의 가독성이 떨어집니다. 복잡한 쿼리일수..
서론 PHP에서 매직 메소드는 특정 상황에서 자동으로 호출되는 메소드로, 이름은 항상 두 개의 밑줄로 시작된다(__). 이들은 객체 지향 프로그래밍에서 다양한 상황에 대응하거나, 코드를 보다 유연하고 읽기 쉽게 만드는 데 도움을 준다. 본 포스팅에서는 PHP에서 제공되는 매직 메소드를 예시를 들며 소개한다. __construct() 객체가 생성될 때 자동으로 호출되는 생성자 메소드로 주로 초기화 작업에 주로 사용된다. class Person { public $name; public $age; public function __construct($name, $age) { $this->name = $name; $this->age = $age; } } $person = new Person("John", 30)..
서론 예전 스타일의 Toolbar 디자인에는 새로고침 버튼이 존재했지만, 'Pull Down To Reload' 라 불리는 스크롤을 내려서 페이지를 새로고침하는 이 기능은 사용자에게 매우 직관적이다. 대부분의 스마트폰 사용자들은 이제 이 동작에 익숙하며, 콘텐츠를 새로 고침하고 싶을 때 자연스럽게 화면을 아래로 당기는 경향이 있다. 때문에 최근 UI/UX 측면에서 Toolbar에 존재하는 새로고침 버튼을 없애고 Pull Down To Reload를 도입하는 Application이 많아졌기에 한번 구현해보자. 'pull down to refresh' 기능을 사용하는 주된 이유와 장점 첫 번째 - 직관적인 사용자 경험: 위에서 설명한 것과 같이 이 기능은 사용자에게 매우 직관적이다. 대부분의 스마트폰 사용자..
서론 웹 개발 분야에서 서버 사이드 렌더링(SSR)은 요즘 화두가 되고 있는 중요한 주제다. 흔히들 SSR은 웹 페이지의 초기 로딩 성능을 개선하고, 검색 엔진 최적화(SEO)를 향상하는 데에 큰 도움을 준다고만 알고 있지만 세세히 알아보지 않는다. 때문에 본 포스팅에서는 SSR이 무엇인지, 어떻게 작동하는지, 그리고 어떤 장점이 있는지 알아보자. SSR의 기본 개념 SSR(서버 사이드 렌더링, 이하 SSR)은 서버에서 웹 페이지의 전체 HTML을 생성하여 브라우저로 보내는 방식이다. 이 과정에서 서버는 데이터를 가져오고, HTML을 완성하며, 필요한 모든 자바스크립트와 CSS를 포함한 완전한 페이지를 클라이언트에게 전달한다. 더 간략하게 말하면, SSR은 클라이언트(브라우저)에 전달되기 전에 서버에서 ..