소프트웨어 공학

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

7
OO 언어로 객체 상태를 구현합니까?
나는 자동차 경주를 시뮬레이트하는 기본 코드 머신의 구현을 포함하는 Java 코드를 받았다. 이것은 고전적인 컴퓨터 과학 상태 머신이 아니라 여러 상태를 가질 수 있고 일련의 계산을 기반으로 상태를 전환 할 수있는 객체 일뿐입니다. 문제를 설명하기 위해 자동차 상태에 대한 일부 상수 (예 : OFF, IDLE, DRIVE, REVERSE 등)를 정의하는 중첩 …

5
두 명의 사용자가 같은 사용자 이름으로 같은 순간에 등록하지 못하게하는 방법은 무엇입니까?
수백만 명의 사용자가 동시에 등록하고 있으므로 등록을 직렬화 할 수 없습니다. 병렬 등록이 필요합니다. 데이터베이스에 사용자 이름 'user1'이 포함되지 않았다고 가정 해 봅시다. 두 명의 사용자가 동시에 'user1'로 등록을 시도하면 승인됩니다. 그러나 나중에 문제가 발생합니다. 이런 일은 일어나지 않아야합니다. 논리적 인 해결책을 찾고 있습니다. 구체적이지 않습니다. 이것을 해결하는 아이디어.

2
소프트웨어 개발에서 일상적인 작업의 양과 추정에 미치는 영향
소프트웨어 개발에있어 일상적인 작업의 양은 무시할 수 없을 정도로 상대적으로 적어야하며, 이는 소프트웨어 추정의 근본적인 문제라고 확신합니다. 이 결론에 도달하는 방법을 설명하고 논증에 심각한 결함이 있는지 알려주십시오. 높은 정확도로 추정 할 수있는 모든 것은 일상적인 작업이므로 이전에 수행 된 작업을 의미합니다. 연구와 창의력과 관련된 다른 모든 종류의 작업은 적어도 +/- …

7
고급 언어로는 배울 수없는 C로부터 어떤 원칙을 배울 수 있습니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 삼년 전에 . 나는 C가 프로그래밍의 원리를 배우기에 좋은 언어라고 생각합니다. 루비와 같은 고급 언어에서 "매직 된"저급 언어로 무엇을 배울 수 …
11 c  low-level 

3
S- 표현식 (-ish) 표기법에 비해 XML의 장점은 무엇입니까?
XML 및 S- 표현식 (-ish) 표기법에 대해 질문하고 싶습니다. S- 표현은 꽤 오래되었습니다. 그들은 또한 정말 간단합니다. 의미가 같고 구문이 다른 두 가지 형식을 고려할 수 있습니다. ( 폴란드어 위키 백과 에서 가져온 XML 코드 ) <?xml version="1.0" encoding="UTF-8"?> <ksiazka-telefoniczna kategoria="bohaterowie książek"> <!-- komentarz --> <osoba charakter="dobry"> <imie>Ambroży</imie> <nazwisko>Kleks</nazwisko> <telefon>123-456-789</telefon> …
11 xml 

3
비 CRUD 작업을 처리하기 위해 REST API를 설계하는 방법은 무엇입니까?
SOAP 기반 서비스 세트를 RESTful API로 변환하려고합니다. 작업 이름을 분석하여 리소스를 식별하는 것으로 시작했으며 리소스를 얻었습니다 Subscription. 구독 상태를 업데이트해야 할 때 POST리소스에 직접 액세스 할 수 없기 때문에 서버에 요청을 보낼 수는 없지만 속성을 업데이트하려면 RPC 스타일 작업을 호출해야합니다. 또한 구독 상태를 "active"로 변경하는 경우에만 외부 서비스에 대한 추가 …

6
단어 당 2 비트의 비트가 "편리한"입니까? 그렇다면 왜 그렇습니까?
바이너리 워드 (예 : 바이트 당 8 비트)에서 2의 거듭 제곱 비트가 "좋은 것"또는 "편리한 것"이라고 주장하는 여러 출처를 발견했습니다. 이유를 지적하는 출처가 없습니다. 에서 어떤 바이트는 8 비트 이유의 역사는? 우리는 승인 된 답변을 읽습니다. 이진 컴퓨터는 디자이너에게 2의 크기를 제고하도록 동기를 부여합니다. 그래, 왜? 같은 질문이지만 질문의 주석 …
11 hardware  byte  bit 

3
'직원'수업은 어떻게 디자인해야합니까?
직원 관리를위한 프로그램을 만들려고합니다. 그러나 Employee수업 을 디자인하는 방법을 알 수는 없습니다 . 저의 목표는 Employee객체를 사용하여 데이터베이스에서 직원 데이터를 생성하고 조작 할 수 있도록하는 것입니다. 내가 생각한 기본 구현은 다음과 같습니다. class Employee { // Employee data (let's say, dozens of properties). Employee() {} Create() {} Update() {} Delete() …

1
어니언 아키텍처 및 3 계층 아키텍처
BL이 CRUD를 수행하기 위해 DAL (또는 DAL의 인터페이스)에서 메소드를 호출해야하는 3 계층 아키텍처에 비해 양파 아키텍처의 이점 만 볼 수 있습니다. 양파는 우려, 분리 성, 유지 보수성 및 분리 성이 우수합니다. 양파 아키텍처는 실제로 모든 측면에서 더 좋으며 3 레이어 아키텍처는 오래된 작업 방식이거나 3 레이어 아키텍처를 선호하는 시나리오가 있습니다.

2
전이 의존성에 의존하거나 명시 적으로 선언하는 것이 낫습니까?
다음과 같은 프로젝트 구조가 있습니다. My Project - Other Team's Project -Third Party Dependency My Project필요 Other Team's Project기능으로, 모두 My Project와 Other Team's Project필요 Third Party Dependency기능. 우리는 이것을 관리하기 위해 의존성 관리 시스템을 사용하고 있습니다. 디자인 관점에서 My Project전 이적으로 의존하는 것이 더 낫 Third Party Dependency습니까? 아니면 …

4
기능 분기에서 작업하는 동안 코드 품질을 개선해야하는 경우
코드 / 캠프 사이트를 찾은 것보다 더 좋은 상태 로 유지하는 방법에 대한이 기사를 정말 좋아 합니다. 실제 환경에서는 코드 청결도를 유지하는 실용적인 방법 인 것 같습니다. 또한 피처를 독립적 으로 개발하는 방법으로 피처 브랜치 를 좋아 하므로 마음에 들지 않으면 쉽게 병합 할 수 없습니다. 그러나 기능 분기에서 작업 …

4
특정 기능이 올바르게 작동하는지 언어 디자이너가 결정하거나 증명하기 위해 무엇을합니까?
언어 디자인에 관심이 있으며 일반적으로 널리 알려진 기능 (예 : 상속, 다형성, 대리자, 람다, 캡처, 가비지 수집, 예외, 제네릭, 분산, 반사 등), 상호 작용에 대해 쉽게 추론 할 수 있습니다. 특정 언어, 구현 방법, 제한 사항 등 지난 몇 개월 동안 필자는 객체 수명을 정적으로 검증 할 수있게하여 메모리 안전성과 …

4
프로그래머로서 비즈니스 규칙에 대한 채택과 이해를 빠르게하려면 어떻게해야합니까?
나는 한동안 개발자였다. 나는 거기서 최고가 아닙니다. (이 방에 혼자 앉아있을 때, 나는 여기에서도 최고가 될지 궁금하다.) 그러나 나는 나의 도구를 이해하게되었고, 나는 추론하고 배우는 나의 능력을 신뢰하게되었다. 새로운 직업을 시작할 때, 나는 내가 알고있는 언어라면 코드베이스를 배울 수 있다고 항상 믿는다. 그것이 내가 아는 언어 나 틀이 아니라면, 나는 …


2
푸시 포스 브랜치를 git하는 것이 잘못입니까?
기능 브랜치에서 작업 할 때 작업을 검토하고 메인 브랜치에서 통합하기 전에 대화 형 리베이스 를 사용하여 브랜치의 커밋 을 정리 하려고합니다 . 기능을 개발하는 동안 중간 작업을 원격 저장소에 백업 수단으로 푸시하고 싶습니다. 즉, 하드 드라이브 충돌시 전체 기능 분기가 손실되는 것을 원하지 않습니다. 그러나 이것은 종종 git push --forcerebase …
11 git 

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