웹은 지난 20년 동안 매우 빠르게 변화했습니다. 점점 더 많은 논리가 서버 측에서 클라이언트 측으로 이동됩니다. 클라이언트 측에서 더 복잡한 JavaScript 코드를 작성해야 할 뿐만 아니라 최근 몇 년 동안 이상한 일이 일어났습니다. JavaScript는 서버로 이동하고 웹 기술은 데스크탑으로 이동하고 있습니다. 새로운 것은 아니지만 20년 전에 누가 이런 생각을 했을까요?
웹이 변했고, 나의 기술 스택도 변했습니다. 내 스택이 다시 루트로 변경된 것 같습니다. 20년 전 저는 HTML과 JavaScript로 시작하여 VBScript를 사용하여 기존 ASP로 전환했습니다. 2001년에 저는 ASP.NET과 VB.NET에 푹 빠져 2006년 말까지 이 작업을 중단했습니다. 2007년 말에 저는 C#으로 ASP.NET을 작성하기 시작했습니다. HTML과 JavaScript는 여전히 포함되어 있었지만 제3자 컨트롤에 어느 정도 캡슐화되어 있었으며 jQuery는 당시 JavaScript의 별칭이었습니다. JavaScript의 모든 것은 jQuery입니다. ASP.NET WebForms는 거대하고 유연성이 떨어지는 것처럼 느껴지지만 효과적으로 작동합니다. 그 후인 2010년에는 Silverlight, WinForms 및 WPF를 사용하여 많은 작업을 수행했습니다.
ASP.NET MVC가 등장했고 웹은 다시 ASP.NET WebForms보다 더 자연스럽게 느껴지기 시작했습니다. ASP.NET 개발자의 관점에서 보면 웹은 더 좋아지고, 더 깨끗해지고, 더 유연해지고, 더 가볍고 자연스러워지기 시작합니다.
그러나 새로운 것도 나타났습니다. ASP.NET 세계 외부의 것입니다. KnockOut, Backbone, 이후 Angular 및 React와 같은 강력한 JavaScript 라이브러리. 첫 번째 단일 페이지 애플리케이션 프레임워크(죄송하지만 형편없는 ASP.NET AJAX는 언급하고 싶지 않습니다...)가 등장했고 UI 로직이 서버에서 클라이언트로 이동되었습니다. (물론, 우리는 2005년에 멋진 SPA를 얻었지만 이를 사용하여 프레임워크를 만드는 방법을 찾지 못했습니다.)
NodeJS는 서버에서 JavaScript를 사용하여 다시 세상을 변화시킵니다. 멋진 웹 애플리케이션을 만들려면 두 가지 언어(HTML과 JavaScript)만 있으면 됩니다. 일부 도구는 NodeJS를 기반으로 하기 때문에 백엔드에서 사용하는 것 외에는 NodeJS에 별로 관심이 없습니다. 어쩌면 버그일 수도 있습니다. )
이제 ASP.NET Core가 있으므로 기존 ASP.NET MVC보다 훨씬 자연스럽게 느껴집니다. 이 경우 소위 자연스럽다는 것은 기존 ASP를 작성하는 것과 거의 동일한 느낌을 의미합니다. 이는 상태 비저장 웹을 고치려고 하기보다는 작업하는 것을 의미합니다. 요청 및 응답 작업은 기존 ASP.NET MVC보다 간단하고 ASP.NET WebForms보다 훨씬 간단합니다. 자연스럽다고 해서 기존 ASP와 마찬가지로 구조화되지 않은 쓰레기를 작성해야 한다는 의미는 아닙니다. ;)
왜냐하면 우리는 이미 아주 멋진 클라이언트 측 JavaScript 프레임워크를 갖고 있기 때문입니다. 단순화되고 미니멀한 서버 측 프레임워크를 사용하면 서버 부분이 REST 서비스에서 정적 파일과 데이터만 제공하도록 축소됩니다.
이때 TypeScript에 대해 더 깊이 이해하는 것이 좋습니다. 하지만 지금 시점에서는 그것이 이해가 되지 않습니다. 저는 아마도 20년 동안 JavaScript로 코딩을 해왔지만 단일 프로젝트에서 그렇게 많은 JavaScript 코드를 작성한 적이 없습니다. 그러다가 지난 몇 년 동안 AngularJS를 사용하기 시작했습니다. Angular2는 TypeScript를 주의 깊게 연구해야 하는 이유 중 하나입니다. 현재 Angular2는 완전히 TypeScript로 작성되었기 때문입니다.
몇 주 전에 저는 첫 번째 실제 NodeJS 프로젝트를 시작했습니다. NodeJS를 사용하여 사용자에게 매우 유연한 스크립팅 런타임을 제공하는 데스크톱 애플리케이션이었습니다. NodeJS는 일반 JavaScript 대신 TypeScript로 작성된 기능과 UI를 사용자에게 제공합니다. 왜? TypeScript에는 예상치 못한 많은 이점이 있기 때문입니다:
JavaScript 작성 가능
작은 모듈 및 구조화된 코드 작성에 도움
NodeJS 호환 모듈 작성에 도움
일반적으로 각 모듈마다 JavaScript 코드를 모두 작성할 필요는 없습니다.
작성하는데 필요한 기능에만 집중하세요
이것이 TypeScript가 나에게 큰 도움이 되는 이유입니다. 물론 입력된 언어는 여러 상황에서 유용하지만 - 20년 동안 JS를 사용해 본 결과 - 암시적으로 입력된 JavaScript 언어의 유연성이 마음에 들고 익숙해졌습니다. 이는 내 관점에서 TypeScript의 가장 큰 장점은 TypeScript에서 암시적으로 형식화된 코드를 작성할 수 있고 JavaScript의 유연성을 활용할 수 있다는 것입니다. 그래서 제가 "아직도 JavaScript를 작성하는 것이 가능합니다"라고 말한 것입니다.
웹 기술이 변했고, 나의 기술 스택도 변했고, 도구도 변했습니다. 이 모든 것들이 도구와 함께 가벼워지고 있습니다. 콘솔이 돌아왔고 IDE가 원래의 뿌리로 돌아왔습니다. 구문 강조 및 IntelliSense와 같은 기능을 갖춘 텍스트 편집기에 지나지 않습니다. 현재는 작업 중인 프로젝트 유형에 따라 Visual Studio Code의 Swiss Army Knife 또는 Adobe Brackets를 사용하는 것을 선호합니다. 둘 다 매우 빠르게 시작되며 몇 가지 멋진 기능이 포함되어 있습니다.
가벼운 IDE를 사용하는 것은 즐겁습니다. 앱을 개발하는 데 사용해야 하는 IDE를 통해서가 아니라 개발에 필요한 앱을 통해 머신의 리소스를 사용할 수 있기 때문에 모든 것이 빠릅니다. 이로 인해 개발 속도가 훨씬 빨라집니다.
오늘 IDE를 시작한다는 것은 cmder(Windows에서 내가 가장 좋아하는 콘솔)를 시작하고, 프로젝트 폴더를 변경하고, TypeScript 파일을 보기 위한 콘솔 명령을 실행하고, 저장하고, 컴파일하는 것을 의미합니다. 다른 콘솔을 실행하여 NPM, gulp, 타이핑, dotnet CLI, NodeJS 등과 같은 도구를 사용할 수 있을 뿐만 아니라 제가 가장 좋아하는 경량 편집기를 실행하여 코드를 작성할 수도 있습니다! : )
원문: 지난 20년 동안 웹 개발이 나에게 어떻게 변화했는지
위 내용은 지난 20년 이상 동안 웹 개발이 어떻게 변화했는지의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

C#.NET은 여러 응용 프로그램 개발을 지원하는 강력한 도구 및 라이브러리를 제공하기 때문에 여전히 중요합니다. 1) C#은 .NET 프레임 워크를 결합하여 개발 효율적이고 편리하게 만듭니다. 2) C#의 타입 안전 및 쓰레기 수집 메커니즘은 장점을 향상시킵니다. 3) .NET은 크로스 플랫폼 실행 환경과 풍부한 API를 제공하여 개발 유연성을 향상시킵니다.

C#.NETISVERSATILEFORBOTHWEBBANDDESKTOPDEVENTROMMENT.1) FORWEB, useASP.NETFORRICHINTERFACES.3) FORDESKTOP.3) USEXAMARINFORCROSS-PLATFORMDEEVENTRIMMENT, LINABILEDEV, MACODEDEV, and MACODEDOWS, 및 MACODEDOWS.

C# 및 .NET는 지속적인 업데이트 및 최적화를 통해 신흥 기술의 요구에 적응합니다. 1) C# 9.0 및 .NET5는 레코드 유형 및 성능 최적화를 소개합니다. 2) .NETCORE는 클라우드 네이티브 및 컨테이너화 된 지원을 향상시킵니다. 3) ASP.NETCORE는 최신 웹 기술과 통합됩니다. 4) ML.NET는 기계 학습 및 인공 지능을 지원합니다. 5) 비동기 프로그래밍 및 모범 사례는 성능을 향상시킵니다.

C#.netissuitable forenterprise-levelapplications는 richlibraries, androbustperformance, 그러나 itmaynotbeidealforcross-platformdevelopmentorwhenrawspeediscritical, wherelanguagesslikerustorthightordogrordogrognegrognegrognegrognecross-platformdevelopmentor.

.NET에서 C#의 프로그래밍 프로세스에는 다음 단계가 포함됩니다. 1) C# 코드 작성, 2) 중간 언어 (IL)로 컴파일하고 .NET 런타임 (CLR)에 의해 실행됩니다. .NET에서 C#의 장점은 현대적인 구문, 강력한 유형 시스템 및 .NET 프레임 워크와의 긴밀한 통합으로 데스크탑 응용 프로그램에서 웹 서비스에 이르기까지 다양한 개발 시나리오에 적합합니다.

C#은 Microsoft가 개발 한 최신 객체 지향 프로그래밍 언어이며 .NET 프레임 워크의 일부로 개발되었습니다. 1.C#은 캡슐화, 상속 및 다형성을 포함한 객체 지향 프로그래밍 (OOP)을 지원합니다. 2. C#의 비동기 프로그래밍은 응용 프로그램 응답 성을 향상시키기 위해 비동기 및 키워드를 기다리는 키워드를 통해 구현됩니다. 3. LINQ를 사용하여 데이터 컬렉션을 간결하게 처리하십시오. 4. 일반적인 오류에는 NULL 참조 예외 및 인덱스 외 예외가 포함됩니다. 디버깅 기술에는 디버거 사용 및 예외 처리가 포함됩니다. 5. 성능 최적화에는 StringBuilder 사용 및 불필요한 포장 및 Unboxing을 피하는 것이 포함됩니다.

C#.NET 애플리케이션에 대한 테스트 전략에는 단위 테스트, 통합 테스트 및 엔드 투 엔드 테스트가 포함됩니다. 1. 단위 테스트를 통해 MSTEST, NUNIT 또는 XUNIT 프레임 워크를 사용하여 코드의 최소 단위가 독립적으로 작동합니다. 2. 통합 테스트는 일반적으로 사용되는 시뮬레이션 된 데이터 및 외부 서비스를 결합한 여러 장치의 기능을 확인합니다. 3. 엔드 투 엔드 테스트는 사용자의 완전한 작동 프로세스를 시뮬레이션하며 셀레늄은 일반적으로 자동 테스트에 사용됩니다.

C# 수석 개발자와의 인터뷰에는 비동기 프로그래밍, LINQ 및 .NET 프레임 워크의 내부 작업 원리와 같은 핵심 지식을 마스터하는 것이 필요합니다. 1. 비동기 프로그래밍은 비동기를 통해 작업을 단순화하고 응용 프로그램 응답 성을 향상시키기 위해 기다리고 있습니다. 2.linq는 SQL 스타일로 데이터를 운영하고 성능에주의를 기울입니다. 3. Net Framework의 CLR은 메모리를 관리하며 가비지 컬렉션은주의해서 사용해야합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

드림위버 CS6
시각적 웹 개발 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.
