전체 글
-
길이 아닌 곳에서 길을 찾지 마세요.칼럼 2024. 3. 6. 11:27
개발자는 종종 코너에 몰리곤 한다. 기획대로 개발했고 처음에는 모든게 순조로워 보인다. 하지만, 시간이 지남에 따라 예상과 다르게 흘러가는 중에 코너에 몰리게 된다. 성능은 떨어지고 속도 문제가 발생하고 각종 트러블에 정합성이 깨지고 문제가 어디서 발생하고 무엇인지도 모르는 상태가 계속된다. 이와중에 개발팀장이나 책임있는 사람들은 문제를 해결하지 못하고 퇴사하고 뒷 감당은 모두 남겨진 사람의 몫. 인력을 갈아 넣어서 해결될 일이였다면 문제가 되지 않았을 것이다. 서버에 막대한 비용을 투입하고도 해결하지 못 하는 상태가 되면 회사는 비용과 인력에서 모두 손해를 보게 된다. 결국, 서비스는 종료하게 되고 해당 인력은 정리해고 당한다. 위와 같은 일은 스타트업이나 중소기업에서 흔하게 발생하는 경우다. 심지어 ..
-
-
예매, 예약 시스템에 대한 고찰 - 1프로그래밍 2024. 3. 3. 22:51
대부분의 개발자는 분산 처리와 인프라에 대해 고민할 경우가 많지 않다. 분산 처리의 경우 대부분 Message Queue라던지, 비동기 처리를 공부할 것이다. 여기서 다루고자 하는 것은 대량 접속자에 대한 처리에 대한 고민이다. 우리가 영화나 공연 또는 기차 예매 시스템을 개발한다고 하자. 예로 공연 예매 시스템을 구현한다면 어떻게 해야 할까? 일반적인 개발자는 모든 서버와 인프라를 하나의 시스템으로 간주한다. 즉, 모든 시스템은 동일한 역활을 수행하는데 있어, 특정 영역이나 구분 없이 모두 공통적인 기능을 수행하는 시스템을 구축하게 된다. 이러한 경우 대량 접속자 또는 처리에 취약할 수 밖에 없다. 특히 도메인과 많은 연관성이 있는데 그림으로는 아래와 같다. 위와 같은 예매 좌석이 있다고 하자. 각 구..
-
좋은 관리자 UI란?칼럼 2024. 2. 27. 00:06
개발자는 언제나 화면을 만든다. 언제나 개발자 곁에는 GUI 도구들이 있었고 사용자를 위해서는 UI가 필요하다. 그렇다면 좋은 관리 UI란 무엇일까? 먼저, 화면 동작에 대한 시나리오이다. 목록 ----------------> 상세 -------------------> 입력 | | | -------------------------> 수정 | | | -------------------------> 삭제 -----------------------> 삭제 모든 화면은 목록을 통해서 진입해야 한다. 그림으로는 아래와 같다. 물론 모든 화면이라는 표현이 맞지는 않지만 일반적으로 위와 같은 시나리오 이다. 상세는 어떨까? 상세는 RTL에 따라 우측 상단과 하단에 각각 버튼이 배치 된다. 상단 우측에 배치되어야 하는..
-
RTO(Return to Office)는 회사 가치를 향상시키지 않고 직원을 비참하게 만듭니다.칼럼 2024. 2. 26. 17:23
원문 : RTO는 회사 가치를 향상시키지 않고 직원을 비참하게 만듭니다. 아르스 테크니카 (arstechnica.com) RTO doesn’t improve company value, but does make employees miserable: Study Data is consistent with bosses using RTO to reassert control and scapegoat workers. arstechnica.com 데이터는 RTO를 사용하여 통제권을 강화하고 작업자를 희생양으로 삼는 상사와 일치합니다.
-
ASP.NET MVC에서 ASP.NET CORE MVC + WEBAPI의 여정 - 파트2프로그래밍 2024. 2. 16. 13:56
이제 MVC 대신 BLAZOR SPA를 할 차례 입니다. .NET을 사용하는 Web project들은 대부분 MVC로 구현된다. 또는 현대적 어플리케이션을 작성한다면 대부분 react, vue를 사용하고 있으리라. (angular는 사랑받지 못하고 있다...) 그럼 왜 Blazor를 추천하는가? 파트1에서 대부분의 개발자가 Winform을 거쳐왔다고 이야기 하였다. 그러나, 특이 케이스들이 있으니, WPF, Sliverlight를 개발해본 개발자들이 되겠다. WPF는 간단히 말해서 마크업 기반으로 UI 프로그램을 작성할 수 있는 UI프레임워크가 되겠다. 그렇다, WPF 마크업이 HTML의 마크업과 유사(?)하기에, 또한 MVC를 거치며 모델화하는 프로젝트를 경험한 개발자에게 유용한 Blazor는 .net..
-
ASP.NET MVC에서 ASP.NET CORE MVC + WEBAPI의 여정 - 파트1프로그래밍 2024. 2. 15. 15:02
이제 과거의 유산을 걷어내고 새로 스택을 쌓을 시간 입니다. ASP.NET MVC와 ASP.NET CORE MVC는 상당한 간극이 있다. 대표적으로 HttpContext를 사용하는 방법에 있다. ASP.NET MVC의 HttpContext는 Application에서 전역 객체에 속한다. 아래와 같이 설명할 수 있다. Request (Browser) ----> IIS - Create Application Thread (at ThreadPool) ---> ASP.NET MVC Pipeline ----> Find route to Controller 또한 ASP.NET MVC에서는 별도의 의존성 주입이 기본으로 없으므로 대부분의 코드가 HttpContext를 직접적으로 사용하고 있다. 코드로는 아래와 같다. p..
-
애플은 PWA를 죽이고 싶어합니다.IT News 2024. 2. 15. 13:41
원문 : Apple은 PWA를 죽이고 싶어합니다. 이제 그 어느 때보다 명확해졌습니다 | by 대니 뫼르케르케 | 2024년 2월 | ITNEXT (주)아이티넥 Apple Wants To Kill PWAs It’s now more clear than ever itnext.io 실버라이트와 Flash도 애플이 죽였습니다. 상황이 더 나빠질 수 없다고 생각했을 때 Apple은 iOS 17.4 베타 릴리스에서 PWA를 비활성화하기로 결정했습니다. 처음에는 이것이 베타 릴리스에서 드문 일이 아닌 버그라고 생각했지만 PWA가 비활성화되었음을 나타내는 팝업을 보여주는 이 트윗을 보았습니다. 수년 동안 Apple은 경쟁 브라우저가 Webkit 엔진에서 실행되도록 요구한 다음 핵심 기능을 구현하는 것을 거부하여 iOS..