소프트웨어 공학

시스템 개발 수명주기 내에서 작업하는 전문가, 학자 및 학생을위한 Q & A

15
현대 컴퓨팅 시대의 '일반적인 비즈니스 앱'에서 성능이 중요한 이유는 무엇입니까? [닫은]
이것은 당신에게 이상한 질문처럼 보일 수 있습니다. 저는 취미 자바 프로그래머입니다. 나는 여러 게임, 음악을 만드는 AI 프로그램, 그림을위한 또 다른 프로그램 및 유사한 것들을 개발했습니다. 이것은 프로그래밍에 대한 경험이 있지만 비즈니스 응용 프로그램의 전문 개발에는 해당되지 않음을 나타냅니다. 이 사이트에서 성능에 대한 많은 이야기를 봅니다. 사람들은 종종 C #에서 …

9
대부분의 "잘 알려진"명령형 / OO 언어가 '아무것도없는'값을 나타낼 수있는 유형에 대한 확인되지 않은 액세스를 허용하는 이유는 무엇입니까?
나는 null(예를 들어) 대신에 ( 비) 편의에 대해 읽었습니다 Maybe. 읽은 후 이 글을 , 나는 그것을 사용하는 것이 훨씬 더 좋을 것이라고 확신하고있다Maybe (또는 무언가 유사). 그러나 모든 "잘 알려진"명령형 또는 객체 지향 프로그래밍 언어가 여전히 사용하고 있으며 null( '아무것도없는'값을 나타낼 수있는 유형에 대한 확인되지 않은 액세스를 허용 함 …

1
잉글리쉬 파서 (The Hogbit 1982)
"Inglish"라는 엄청나게 강력한 파서를 특징으로하는 텍스트 어드벤처 게임 인 Hobbit 에 대해 흥미를 느꼈습니다. 잉글리쉬는 "호기심 많은지도에 대해 간달프에게 물어보고 검을 들고 트롤을 죽여라"와 같은 고급 문장을 입력 할 수 있도록 허용했다. 파서는 복잡하고 직관적으로 대명사, 부사 ( "고블린을 악의적으로 공격"), 구두점 및 전치사를 도입했으며 플레이어가 이전에는 불가능했던 방식으로 게임 …




8
코드와 데이터 분리는 어떻게 실습이 되었습니까?
질문을주의 깊게 읽어 보시기 바랍니다 :이 요청 하는 방법 이 아닌 이유 . 최근 에이 답변 을 보았습니다. 데이터베이스를 사용하여 변경 불가능한 데이터를 저장하는 것이 좋습니다. 그것은 당신이 묘사하는 많은 마법의 숫자, 특히 부분적으로 의존적 인 경우 실제로 코드가 아닌 데이터라고 생각합니다. [...] SQL 유형 데이터베이스를 의미하거나 단순히 형식화 된 …

3
Redis를 통해 메시지 대기열을 구현하는 방법은 무엇입니까?
왜 Redis를 큐잉해야합니까? Redis가 큐잉 시스템을 구현하기에 좋은 후보가 될 수 있다는 인상을 받고 있습니다. 지금까지는 폴링 또는 RabbitMQ와 함께 MySQL 데이터베이스를 사용했습니다. RabbitMQ를 사용하면 많은 문제가 발생했습니다. 클라이언트 라이브러리는 매우 가난하고 버그가 많으며 서버 관리 콘솔에 몇 가지 문제 등을 해결하는 데 너무 많은 개발자 시간을 투자하고 싶지 않습니다. …

12
왜 수업이 "추상"또는 "최종 / 봉인"이외의 것이어야합니까?
10 년 이상의 java / c # 프로그래밍 후 다음 중 하나를 생성했습니다. 추상 클래스 : 계약은있는 그대로 인스턴스화되지 않습니다. final / sealed classes : 구현은 다른 것에 대한 기본 클래스로 사용되지 않습니다. 간단한 "클래스"(즉, 추상이나 최종 / 봉인되지 않은)가 "현명한 프로그래밍"이되는 상황은 생각할 수 없습니다. 왜 수업이 "추상"또는 "최종 …

3
Schema.org 및 마이크로 포맷
두 가지 모두 동일한 목적을 수행합니다. 의미 적 마크 업을위한 어휘 제공. 스키마는 인식되고 표준화되지만 마이크로 포맷 표준은 공개 커뮤니티 프로세스에 의해 결정됩니다. 스키마는 문서에서 마이크로 데이터를 활용하는 반면 마이크로 포맷은 계속 진행됩니다. (참고 : microdata는 요소가 단일이어야 itemtype하고 microformats는 여러 클래스를 동일한 요소에 적용 할 수 있음을 의미합니다. xFolk …

6
특정 기능을 함수로 추출해야하는 이유는 무엇입니까?
3 가지 작업을 수행하는 큰 방법이 있습니다. 각 방법을 별도의 기능으로 추출 할 수 있습니다. 각 작업에 대해 추가 기능을 만들면 코드가 더 나아지거나 왜 그럴까요? 분명히, 그것은 주 함수에서 적은 코드 줄을 만들 것이지만, 추가 함수 선언이있을 것이므로 클래스에는 클래스가 더 복잡해질 것이기 때문에 좋지 않다고 생각되는 추가 메소드가 …

4
금도금을 멈추고 작업 개발을 발표하기 위해 만족하는 방법 [닫기]
내가 속한 개발 팀은 최근 민첩한 관행에 따라 업무를 수행하도록 적응했습니다. 이것은 개인적으로 금도금 코드 (및 문서)를 막을 수 없다는 사실을 개인적으로 강조했으며 결과적으로 훨씬 일찍 요구 사항을 충족시키는 솔루션을 제공 할 수 있었을 때 원래 추정치를 초과했습니다. 내 윤리는 강박 관념에 접어 들어 코드에 너무 붙어서 리팩토링하고 n도까지 완성하기 …

7
"데이터 숨기기"와 "캡슐화"의 차이점은 무엇입니까?
"실제로 Java 동시성"을 읽고 있는데 다음과 같이 말합니다. "다행히 캡슐화 및 데이터 숨기기와 같이 체계적으로 유지 관리 가능한 클래스를 작성하는 데 도움이되는 동일한 객체 지향 기술로 스레드 안전을 만드는 데 도움이 될 수 있습니다. 수업. " 문제 # 1-데이터 숨기기에 대해 들어 본 적이 없으며 그것이 무엇인지 모릅니다. 문제 # …

9
순수한 자바 웹 브라우저, 실용적입니까? [닫은]
Java 웹 브라우저가 가능하다는 것을 알고 있지만 실용적입니까? 나는 Lobo 프로젝트를 보았고 나는 감명 받았다는 것을 인정해야하지만, 내가 모은 것에서 2009 년에 개발이 중단 된 것 같습니다. 순수한 Java (WebKit Java 바인딩이 아닌 모든 유형)로 코딩 된 브라우저가 경쟁 할 수 있습니까? 크롬이나 파이어 폭스의 순위 중 하나입니까, 아니면 본질적으로 …
29 java  web  browser 

11
최고의 프로그래머가 다른 사람의 코드를 소스 제어로 확인해야합니까?
svn과 git 의 차이점 중 하나 는 저장소에 대한 액세스를 제어하는 ​​기능입니다. 누가 변경을 커밋해야하는지에 대한 관점의 차이가 있기 때문에 둘을 비교하기는 어렵습니다! 이 질문은 git을 회사의 팀을위한 중앙 저장소로 사용하는 것에 관한 것입니다. 팀 구성원이 대부분의 회사에서와 같이 기술 수준이 다양하다고 가정합니다. Git은 유일하게 최고의 (가장 생산적이고 경험이 많은) …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.