소프트웨어 공학

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

9
의존성 주입 이해
의존성 주입 (DI) 에 대해 읽고 있습니다. 필자가 읽는 동안 제어 역전 (IoC)을 참조하고 있었기 때문에 여행을 갈 수 있다고 느꼈습니다. 이것은 내 이해입니다 : 모델을 소비하는 클래스에서 모델을 만드는 대신 모델을 이미 흥미로운 속성으로 채워진 모델에 매개 변수로 사용할 수있는 새 클래스에 전달합니다 (주입) 생성자). 나에게 이것은 단지 인수를 …

7
보안 집약적 인 사이트의 작은 버그를 수정하기 위해 고용되었습니다. 코드를 살펴보면 보안 허점이 가득합니다. 너 뭐하니? [닫은]
누군가 사이트에서 작은 일을하도록 고용되었습니다. 대기업 사이트입니다. 매우 민감한 데이터가 포함되어 있으므로 보안이 매우 중요합니다. 코드를 분석하자마자 보안 허점으로 가득 차있는 것을 알았습니다. 읽고 많은 PHP 파일은 사용자의 get / post 입력을 mysql 요청 및 시스템 명령에 직접 입력합니다. 문제는 그를 위해 사이트를 만든 사람은 그 일에 의존하는 가족과 아이들을 …

6
GET 요청이 서버에서 데이터를 변경하지 않아야하는 이유는 무엇입니까?
인터넷을 통해 다음과 같은 조언을 봅니다. GET은 서버의 데이터를 변경해서는 안됩니다. POST 요청을 사용하십시오. 이 아이디어의 기초는 무엇입니까? 데이터베이스에 데이터를 삽입하고 GET 쿼리 문자열에 매개 변수를 전달하는 PHP 서비스를 만들면 왜 그럴까요? (SQL 주입을 처리하기 위해 준비된 명령문을 사용하고 있습니다). POST 요청이 더 안전한가요? 아니면 이것에 대한 역사적인 이유가 있습니까? …
109 http  http-request 

5
상속보다 구성을 선호해야하는 이유는 무엇입니까?
나는 항상 구성이 상속보다 선호된다는 것을 읽었습니다. 예를 들어, 상속 과는 달리 컴포지션을 사용하는 것을 옹호하는 것과 같은 종류 의 블로그 게시물은 다형성이 어떻게 이루어지는 지 알 수 없습니다. 그러나 사람들이 구성을 선호한다고 말할 때 실제로 구성과 인터페이스 구현의 조합을 선호한다는 느낌이 들었습니다. 상속없이 어떻게 다형성을 얻을 수 있습니까? 상속을 …

20
개발자로서 오픈 소스로 돈을 버는가?
저는 현재 학생 (응용 정보 기술)이며 C # 및 Java에서 대부분의 프로그래밍을 수행합니다. 나는 어떻게 개발자로서 오픈 소스로 돈을 벌 수 있을지 궁금했다. 나는 지원을 제공하거나 서비스를 제공한다는 이야기를 알고 있지만 sysadmin이 아니며 sysadmin 작업을 좋아하지 않습니다. 실제로 나는 미래에 C와 C ++에 손을 대고 저수준 개발을하고 싶습니다. 내 실제 …

1
Git에서 암호화 서명 커밋 및 태그의 장단점은 무엇입니까?
그래서 누군가 동료가 내 작업을 검토했으며 커밋과 태그에 항상 암호로 서명해야한다고 말했습니다. 이유를 물었을 때, 그는 나에게 그것을 설명 할 줄 몰랐고 "그냥 좋은 일이다"고 말했다. 명백한 침팬지 시나리오 를 피하려고 노력하는 이유는 무엇입니까? 실제로 많은 장점과 단점이 있습니까? 내가하는 모든 커밋과 태그에 서명하고 싶은 실질적인 이유는 무엇입니까?
109 git  cryptography 

10
C #에서 "정적"을 사용하지 않습니까?
코드 검토를 위해 다른 건축가에게 작성한 신청서를 제출했습니다. 그들 중 하나가 거의 즉시 저에게 답장을 보내면서 "정적"을 사용하지 마십시오. 정적 클래스와 메소드로 자동화 된 테스트를 작성할 수 없습니다. "정적"은 피해야합니다. " 수업을 확인한 후 1/4 정도의 수업이 "정적"으로 표시되어 있습니다. 클래스는 코드 전체에서 사용되는 단일 전역 클래스이므로 클래스의 인스턴스를 만들지 …

12
(주) 개발자가 개발 / IT 팀에서 더 나은 프로세스와 관행을 추진하도록 노력해야합니까?
저는 변경 사항을 정당화 할 수 있고 팀이 업무를 수행하는 데 도움이된다면 팀 프로세스를 구성 할 수있는 능력을 갖춘 주니어 개발자입니다. 과거의 회사가 관리에서 나온 프로세스를 엄격하게 정의했기 때문에 이것은 새롭습니다. 우리 팀은 상당히 작고 다소 새롭습니다 (<3 세). 그들은 부족합니다 : 잘 정의 된 소프트웨어 개발 / 작업 관리 …

13
입력이 기술적으로 유효하지만 만족할 수 없을 때 예외 대 빈 결과 집합
공개 릴리스 용 라이브러리를 개발 중입니다. 여기에는 집합을 생성, 검사, 분할 및 새로운 형태로 투영하는 다양한 개체 집합에 대한 다양한 방법이 포함되어 있습니다. 관련이있는 경우 IEnumerableNuGet 패키지로 릴리스되는 LINQ 스타일 확장이 포함 된 C # 클래스 라이브러리 입니다. 이 라이브러리의 일부 메소드에는 만족할 수없는 입력 매개 변수가 제공 될 수 …



8
웹 프로그래밍에서 폴링이 허용되는 이유는 무엇입니까?
현재 이미지 목록을 보여주는 Ruby on Rails 프로젝트를 진행 중입니다. 이 프로젝트의 필수 요소는 웹 페이지를 새로 고칠 필요없이 실시간으로 새 게시물을 표시한다는 것입니다. 잠시 동안 검색 한 후 PubNub와 같은 일부 JavaScript 솔루션 및 서비스를 발견했습니다. 그러나 제공된 솔루션 중 어느 것도 전혀 의미가 없습니다. JavaScript 솔루션 ( polling …
108 loops  logic  polling 

29
지식 기반을 어떻게 관리합니까? [닫은]
프로그래머로서 우리는 많은 입력을 가지고 있습니다 : 전자 책 코드 스 니펫 재미있는 이메일 서류 웹 기사 블로그 게시물 StackOverflow 질문 팟 캐스트 ... 이 모든 것을 저장, 구성, 검색 및 컨설팅하기 위해 어떤 도구를 사용합니까? 이 방대한 양의 데이터를 처리 할 수있는 은색 솔루션이 있습니까?

20
정적 타이핑은 그만한 가치가 있습니까?
나는 타입 안전이없는 곳에서 파이썬으로 코딩을 시작한 다음 C # 및 Java로 옮겼습니다. 나는 파이썬에서 조금 더 빠르고 두통없이 작업 할 수 있다는 것을 알았지 만 다시 C # 및 Java 앱은 훨씬 더 높은 수준의 복잡성을 가지므로 파이썬에 내가 실제로 스트레스 테스트를 한 적이 없다. Java 및 C # …


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