저는 지금 기능적 프로그래밍 개념을 배우고 있으며, 전문적으로 저는 Asp.net 개발자입니다. 그러나 asp.net을 사용하면 너무 자주 코드의 객체 속성을 변경할 수 있습니다. 기능 프로그래밍은 변경 불가능한 객체를 기반으로합니다. 그리고이 개념을 적용하여 텍스트 상자의 가치를 변경하는 것은 매우 고통 스러울 것입니다. 또한 FormView의 ItemInserted 인수 같은 핸들러는 개발자가 True/false로 변경할 수있는 KeepInInsertMode와 같은 개발자가 사용할 수 있습니다.이 경우 FP에 대한 입력 인수를 수정합니다. 귀하의 의견 frnds. 소프트웨어 세계에서 UI를 올바르게 처리하는 방법은 무엇입니까? FP 또는 OOPS.기능적 프로그래밍에 기반한 UI
답변
"올바른"방법을 묻지 만 이것은 공학적 문제이며 수학적 문제는 아닙니다. 트레이드 오프가 존재하는데, 어떤 형태의 맛이 작용하며, 완벽한 솔루션을 제공하는 원 사이즈는 없을 것입니다.
asp.net이 특정 방식으로 작업하기 때문에 모두 OO 프레임 워크가 동일한 디자인 결정을 내렸음을 의미합니다. 다른, 그러나 아직도 OO 접근을위한 Ruby on Rails, 또는 Smalltalk Seaside 웹기구를보십시오. 예를 들어 ASP.net MVC조차도 바닐라 ASP.net과는 다소 다른 접근 방식을 취합니다.
UI 처리를위한 FP 프레임 워크에서도 마찬가지입니다. 현재 실험적으로 보입니다. 즉 모든 디자인 옵션이 OO 프레임 워크만큼 많이 검토 된 것은 아니라고 생각합니다. 살펴보고 싶다면 functional reactive programming (대개 대화식 애니메이션 용), Links (학업 - LINQ와 공통점이있는 부분) 또는 LiveLab's reactive framework - 각기 다른 측면의 문제를 강조하는 것이 좋습니다.
여기에서 배울 점이 많으며 아마도 가장 쉬운 것은 아마도 쉬운 대답이 없을 것입니다 ...
기능적 패러다임을 사용하면 다른 방식으로 사고하게됩니다. "이 버튼을 클릭하면 어떻게 될지 궁금하지 않을 것입니다."버튼 클릭 후 내 응용 프로그램의 새로운 상태는 무엇입니까?
'새로운 상태'는 일부 GUI 작업을 수행하기 위해 소프트웨어의 프리젠 테이션 계층에서 사용됩니다.
"상태 -> 이벤트 -> 상태"기능을 가지게 될 것이며 이는 OO의 "묻지 말고"패러다임보다 훨씬 예측할 수 있습니다.
그러나 더 정교 할 수도 있습니다.
- 1. UI 프로그래밍에 시간이 오래 걸리는 이유는 무엇입니까?
- 2. 기능적 GLUT?
- 3. 소켓 프로그래밍에 루비를 사용하는 것이 좋습니다.
- 4. 응용 프로그램의 기능적 및 비 기능적 부분은 무엇입니까?
- 5. 이것은 기능적 및 비 기능적 요구 사항이 맞습니까?
- 6. 기능적 프로그래밍 함수
- 7. 기능적 프로그래밍 언어의 CMS
- 8. 어떻게 기능적 프로그램을 디자인합니까?
- 9. 스칼라의 기능적 반응 프로그래밍
- 10. 프로그램의 기능적 본체
- 11. 최고의 기능적 프로그래밍 리소스?
- 12. 기능적 프로그래밍 문서
- 13. 기능적 언어의 건축 사고
- 14. 'request'에 기반한 skip_before_filter
- 15. 환경에 기반한 스위치 DLL
- 16. Yii에 기반한 CMS?
- 17. 식별자에 기반한 표식 범위
- 18. 내용에 기반한 CSS 규칙
- 19. OO에서 10,000 피트 기능 프로그래밍에 이르기까지
- 20. 기능적 jQuery : 사용자 정의 이벤트 또는 함수?
- 21. iOS 프로그래밍에 해당하는 CTFrameGetVisibleStringRange?
- 22. 힌디어 프로그래밍에 대한 도움말
- 23. 중첩 배열의 기능적 래핑 해제
- 24. Scala 기능적 디자인 패턴의 카탈로그
- 25. F # 기능적 언어로 만드는 이유
- 26. 기능적 스타일 웹 프레임 워크
- 27. 상태 디자인 패턴의 기능적 등가물
- 28. 기능적 PHP 사이트를 asp.NET으로 변환
- 29. C++의 기능적 데이터 구조
- 30. 영구/기능적 데이터 구조 직렬화