찾다
백엔드 개발PHP 튜토리얼为什么ASP.NET拖控件快速开发的特性被很多专业程序员所唾弃?

我不止在一个地方看到过说拒绝拖控件编程,在很多贴吧论坛以及视频教程的老师都表示不要拖控件编程,微软当初做webfrom的初衷就是为了让web开发更加快速简单,可是为什么这么好的一个产品(或者编程方式)反而被人唾弃呢?

回复内容:

因为有些程序员【只会拖控件】是个问题= =;ASP.NET【能拖控件】是好事


当然最最重要的是,双方都无知,嘲讽的人无知,一些被嘲讽的人无知到活该被嘲讽的地步。。。 拖控件不是问题,只会拖控件才是问题。 基础功能可满足,但是很难控制精细,满足不了后期需求。 webform为了让网页感觉上是保持状态的,把html都封装的不像html了,整个网页都包含在form里头,提交都是post。问题不在控件,拖控件只是利用轮子而已。 拖控件并不是在任何时候都一无是处,只是在特定的此时此地,它的缺点比优点更大而已。
拖控件,其实就是黑框框的简单替代品,是一个本来只会写命令行的程序员,现在需要一个凑合的GUI。这个场景有四个特点:
  1. UI逻辑简单。
  2. UI逻辑和程序逻辑分离。
  3. 程序对UI需求少。
  4. 程序员不熟悉UI编程。
你说,现在这些web应用,哪个敢说自己界面不要了,摆个命令行上来,还有人用?有这种条件的,他就可以拖控件。然而,现在的这些web应用,用户交互就是生命,哪个程序员敷衍界面,就是在敷衍自己的饭碗。所以,这里的专业程序员,只是对广大前端来说的,如果你只会拖控件,你就不是一个专业的前端程序员。
然而还有很多写专业软件的程序员,他们需要一个GUI只是因为用的人不会命令行。写的人和用的人都专业在领域专业知识上,没有时间仔细研究广大的前端知识,他们不是不专业,只是专业的方向不一样。 asp.net 现在有mvc框架,已经成功避免了拖控件这种简单枯燥,对程序员没有挑战的工作 拖控件让好多初级程序员以为这就是web开发了,其实他看到的只是经过n层封装后的一个傻瓜式开发方式。webform为了保持页面状态自己维护了一个viewstate,把所有和页面相关的东西都塞到了这个里面,造成的结果是很慢。实际上webform是把winform的思想在web端的移植,从效果来看,这种移植是不恰当的。当然,拖控件也不是一无是处,开发效率高,做个几百人用的企业级管理应用还是可以胜任的,互联网应用,拖控件是搞不定的。 首先,很多人只会拖控件,懒省事。并且很多人不思进取,就停留在拖控件。

其次,webform当初是为了抢占市场的,生成的web页面也跟ie6一样,很不标准(话说body下先嵌套一层form我也是醉了),并且有不少的html代码是控件生成的,不利于跟美工合作,依稀记得当时公司招美工,要求会.net优先,醉了

最后,b/s发展到现在,分工更明确,层次更突出。尤其重视前端代码,form表单包容所有其它元素,最傻逼的写法了,更别说为了追求速度,header头都各种节约,你再来个一长串的viewstate隐含域。

mvc的出现,不纯粹是为了mvc,也为了让产出更标准。11年mvc3出来,本人就直接抛弃了webform。15年了还有很多比我工作年龄长的人在考虑从webform转mvc,额~~ 刚刚开始学的时候也是从视频开始,各种黑拖控件,然后也就盲目跟着黑。实际做了一段时间开发之后,发现这种模式在小项目上用起来还是挺顺手的。 因为无知啊
这些bs别人的人too young too simple,并不懂得以下两个pattern:
  • Smart UI
  • Magic Button
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
세션 고정 공격을 어떻게 방지 할 수 있습니까?세션 고정 공격을 어떻게 방지 할 수 있습니까?Apr 28, 2025 am 12:25 AM

세션 고정 공격을 방지하는 효과적인 방법은 다음과 같습니다. 1. 사용자 로그인 한 후 세션 ID 재생; 2. 보안 세션 ID 생성 알고리즘을 사용하십시오. 3. 세션 시간 초과 메커니즘을 구현하십시오. 4. HTTPS를 사용한 세션 데이터를 암호화합니다. 이러한 조치는 세션 고정 공격에 직면 할 때 응용 프로그램이 파괴 할 수 없도록 할 수 있습니다.

세션리스 인증을 어떻게 구현합니까?세션리스 인증을 어떻게 구현합니까?Apr 28, 2025 am 12:24 AM

서버 측 세션 스토리지가없는 토큰에 저장되는 토큰 기반 인증 시스템 인 JSONWEBTOKENS (JWT)를 사용하여 세션없는 인증 구현을 수행 할 수 있습니다. 1) JWT를 사용하여 토큰을 생성하고 검증하십시오. 2) HTTPS가 토큰이 가로 채지 못하도록하는 데 사용되도록, 3) 클라이언트 측의 토큰을 안전하게 저장, 4) 변조 방지를 방지하기 위해 서버 측의 토큰을 확인하기 위해 단기 접근 메커니즘 및 장기 상쾌한 토큰을 구현하십시오.

PHP 세션과 관련된 일반적인 보안 위험은 무엇입니까?PHP 세션과 관련된 일반적인 보안 위험은 무엇입니까?Apr 28, 2025 am 12:24 AM

PHP 세션의 보안 위험에는 주로 세션 납치, 세션 고정, 세션 예측 및 세션 중독이 포함됩니다. 1. HTTPS를 사용하고 쿠키를 보호하여 세션 납치를 방지 할 수 있습니다. 2. 사용자가 로그인하기 전에 세션 ID를 재생하여 세션 고정을 피할 수 있습니다. 3. 세션 예측은 세션 ID의 무작위성과 예측 불가능 성을 보장해야합니다. 4. 세션 중독 데이터를 확인하고 필터링하여 세션 중독을 방지 할 수 있습니다.

PHP 세션을 어떻게 파괴합니까?PHP 세션을 어떻게 파괴합니까?Apr 28, 2025 am 12:16 AM

PHP 세션을 파괴하려면 먼저 세션을 시작한 다음 데이터를 지우고 세션 파일을 파괴해야합니다. 1. 세션을 시작하려면 세션 _start ()를 사용하십시오. 2. Session_Unset ()을 사용하여 세션 데이터를 지우십시오. 3. 마지막으로 Session_Destroy ()를 사용하여 세션 파일을 파괴하여 데이터 보안 및 리소스 릴리스를 보장하십시오.

PHP의 기본 세션 저장 경로를 어떻게 변경할 수 있습니까?PHP의 기본 세션 저장 경로를 어떻게 변경할 수 있습니까?Apr 28, 2025 am 12:12 AM

PHP의 기본 세션 저장 경로를 변경하는 방법은 무엇입니까? 다음 단계를 통해 달성 할 수 있습니다. session_save_path를 사용하십시오 ( '/var/www/sessions'); session_start (); PHP 스크립트에서 세션 저장 경로를 설정합니다. php.ini 파일에서 세션을 설정하여 세션 저장 경로를 전 세계적으로 변경하려면 세션을 설정하십시오. memcached 또는 redis를 사용하여 ini_set ( 'session.save_handler', 'memcached')과 같은 세션 데이터를 저장합니다. ini_set (

PHP 세션에 저장된 데이터를 어떻게 수정합니까?PHP 세션에 저장된 데이터를 어떻게 수정합니까?Apr 27, 2025 am 12:23 AM

tomodifyDatainAphPessess, startSessionstession_start (), 그런 다음 $ _sessionToset, modify, orremovevariables.

PHP 세션에 배열을 저장하는 예를 제시하십시오.PHP 세션에 배열을 저장하는 예를 제시하십시오.Apr 27, 2025 am 12:20 AM

배열은 PHP 세션에 저장할 수 있습니다. 1. 세션을 시작하고 session_start ()를 사용하십시오. 2. 배열을 만들고 $ _session에 저장하십시오. 3. $ _session을 통해 배열을 검색하십시오. 4. 세션 데이터를 최적화하여 성능을 향상시킵니다.

Garbage Collection은 PHP 세션에 어떻게 효과가 있습니까?Garbage Collection은 PHP 세션에 어떻게 효과가 있습니까?Apr 27, 2025 am 12:19 AM

PHP 세션 쓰레기 수집은 만료 된 세션 데이터를 정리하기위한 확률 메커니즘을 통해 트리거됩니다. 1) 구성 파일에서 트리거 확률 및 세션 수명주기를 설정합니다. 2) CRON 작업을 사용하여 고재 응용 프로그램을 최적화 할 수 있습니다. 3) 데이터 손실을 피하기 위해 쓰레기 수집 빈도 및 성능의 균형을 맞춰야합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

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

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기