반응형

program tip 2307

Liskov 대체 원칙-재정의 / 가상 방법 없음?

Liskov 대체 원칙-재정의 / 가상 방법 없음? Liskov 대체 원칙에 대한 나의 이해는 기본 클래스의 일부 속성이 참이거나 기본 클래스의 일부 구현 된 동작이 파생 클래스에 대해서도 참이어야한다는 것입니다. 이것은 메서드가 기본 클래스에서 정의 될 때 파생 클래스에서 재정의되어서는 안된다는 것을 의미한다고 생각합니다. 파생 된 클래스 대신 기본 클래스를 대체하면 다른 결과를 얻을 수 있기 때문입니다. 나는 이것이 또한 (순수하지 않은) 가상 방법을 갖는 것이 나쁜 것을 의미한다고 생각합니까? 원리를 잘못 이해 한 것 같습니다. 그렇지 않다면 왜이 원칙이 좋은 습관인지 이해할 수 없습니다. 누군가 나에게 이것을 설명 할 수 있습니까? 감사 기본 클래스의 메서드를 재정의하는 하위 클래스는 Liskov..

program tip 2020.12.31

서블릿 출력 스트림을 닫아야합니까?

서블릿 출력 스트림을 닫아야합니까? 중복 가능성 : HttpServletResponse.getOutputStream () /. getWriter ()에서 .close ()를 호출해야합니까? HttpServletResponse.getOutputStream () (또는 getWriter () 또는 입력 스트림)을 닫을 책임이 있습니까? 아니면 컨테이너에 남겨 두어야합니까? protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { OutputStream o = response.getOutputStream(); ... o.close(); //yes/no ? }..

program tip 2020.12.31

Why is an HTML element rather than an HTML entity?

HTML 엔티티가 아닌 HTML 요소 인 이유는 무엇 입니까? 왜 그렇습니까? 하지 않을까요 무언가 같이 &br;더 적합 할? HTML 엔티티 참조는 HTML 버전에 따라 SGML 엔티티 또는 XML 엔티티입니다 (HTML은 기본 기술에서 엔티티를 상속 함). 엔티티는 다른 곳에서 정의 된 콘텐츠 청크를 문서에 삽입하는 방법입니다. 모든 HTML 엔터티는 단일 문자 엔터티이므로 기본적으로 문자 참조와 동일합니다 (기술적으로는 문자 참조와 다르지만 정의 된 다중 문자 엔터티가 없으므로 구분이 HTML에 영향을 미치지 않음). 예를 들어 HTML 프로세서는 —다음과 같은 DTD의 섹션을 기반으로 해당 엔티티 참조의 내용을 적절한 엔티티로 대체합니다. 따라서 엔티티 참조를 —문자 —(U + 2014) 로 대체..

program tip 2020.12.31

git 브랜치 : gh-pages

git 브랜치 : gh-pages GitHub에 저장소가 있습니다. 최근에 GitHub의 페이지를 발견하여 사용하고 싶습니다. 이 새 브랜치를 생성하고 필요할 때 master브랜치 또는 브랜치에서 커밋하고 싶습니다 gh-pages. 어떻게 할 수 있습니까? 내 저장소 안에 다른 폴더를 만들어야합니까? 이 자습서가 유용 할 수 있습니다. GitHub Pages "gh-pages"분기 및 "master"분기를 상위 프로젝트 폴더 ( "grandmaster")의 하위 폴더로 설정합니다 . 나 에게이 접근 방식은 git checkout gh-pagesgh-pages 콘텐츠를 편집 할 때마다 수행하는 것보다 더 간단 해 보입니다 . 당신의 생각을 알려주세요 ^ _ ^ 편집 : 튜토리얼 링크를 업데이트했습니다-@C..

program tip 2020.12.31

Java Micro ORM 해당

Java Micro ORM 해당 Dapper , PetaPoco , Massive 또는 CodingHorror 와 같은 Micro ORM에 Java에서 가장 가까운 것은 무엇입니까 ? 나는 Spring JDBC 템플릿을 추천한다 . "진정한"ORM은 아니지만 Hibernate가 과잉 인 것처럼 보이는 곳에서 사용하는 것은 즐거움입니다. sql2o는 Dapper 대안처럼 보입니다-JDBC를 둘러싼 얇은 래퍼 String sql = "SELECT id, category, duedate " + "FROM tasks " + "WHERE category = :category"; Sql2o sql2o = new Sql2o(DB_URL, USER, PASS); List tasks = sql2o.createQuery(..

program tip 2020.12.31

ARC 시대의 속성 대 ivar

ARC 시대의 속성 대 ivar ivar를 설정하면 변수 설정이 strong한정자로 기본 설정되기 때문에 이제 할당되는 객체가 유지된다는 것을 이해합니다 . strongivar는 선언 된 객체의 범위에 있고 변수 범위 내에서 객체를 유지하기 때문에 ivar를 포함하는 객체가 아직 살아있는 동안에는 ivars 값이 해제되지 않습니다. 이 올바른지? 그렇다면 메모리 관리 측면에서 유지하는 (강한) 속성과 단순한 ivar 사이에 더 이상 차이가 없다고 생각하는 것이 옳습니까? 변수 인 경우 : ARC를 사용하여 클래스에서 선언됩니다 . 클래스 구현에만 사용됩니다 (클래스 인터페이스의 일부로 노출되지 않음). KVO가 필요하지 않습니다 . 사용자 정의 getter / setter가 필요하지 않습니다. 그런 다음..

program tip 2020.12.31

충돌 해결 병합

충돌 해결 병합 Git에서 병합 충돌이 발생하면 다음과 같은 정크가 충돌하는 파일에 삽입됩니다. 세 가지 질문 : 이 주석을 어떻게 읽습니까? 이러한 병합 충돌을 수정할 때 사용할 전략은 무엇입니까? 문제를 쉽게 해결할 수 있도록 이러한 파일을 읽고 두 버전을 나란히 표시하는 방법을 알고있는 Mac 용 GUI 도구가 있습니까? 참고 : 관련성이있는 경우 GitHub의 Mac GUI 클라이언트를 사용하고 있습니다. 버전 존재가 합병에서 온다. 뒤의 텍스트 >>>>>>는 충돌하는 변경 사항을 도입 한 커밋의 주석입니다. 충돌 마커가 있다는 것은 파일의이 부분의 기본 버전이 두 "새"버전과 다르다는 것을 의미합니다. 기본 버전 (마지막 공통 조상)은 표시되지 않습니다. 보다 편안한 병합을 원하고 GUI를 사용..

program tip 2020.12.31

Git merge --squash와 --no-commit의 차이점

Git merge --squash와 --no-commit의 차이점 제목에서 알 수 있듯이 a git merge --squash와 a 의 차이점에 대해 명확하지 않습니다 git merge --no-commit. 에 대한 도움말 페이지를 이해하는 한 git merge, 두 명령 모두 업데이트 된 작업 트리에 남게되며, 여기서 편집 한 다음 최종 커밋 (또는 여러 커밋)을 수행 할 수 있습니다. 누군가이 두 가지 옵션의 차이점을 명확히 할 수 있습니까? 다른 하나 대신 언제 하나를 사용합니까? git merge --no-commit 이것은 일반적인 병합과 같지만 병합 커밋을 생성하지 않습니다. 이 커밋은 병합 커밋이됩니다. 히스토리를 보면 커밋이 일반 병합으로 나타납니다. git merge --squash 이..

program tip 2020.12.31

복합 키 Entity Framework 만들기

복합 키 Entity Framework 만들기 곧 SQL Server 검색 성능을 향상시키기 위해 기본 키와 함께 남은 테이블에 복합 키를 만들고 싶습니다. 기본 키 (즉, GUID 문자열)가없는 항목을 검색 할 때마다 200k 데이터 테이블에서 성능 문제가 발생합니다. 3 개의 수업이 있다고 가정합니다. public class Device{ public int ID { get; set; } public string UDID { get; set; } public string ApplicationKey { get; set; } public string PlatformKey { get; set; } public ICollection DeviceMessages { get; set; } } public clas..

program tip 2020.12.31

Docker 명령 줄의 Docker 레지스트리에서 특정 태그가있는 Docker 이미지를 찾으려면 어떻게해야합니까?

Docker 명령 줄의 Docker 레지스트리에서 특정 태그가있는 Docker 이미지를 찾으려면 어떻게해야합니까? Docker 이미지에 대한 특정 태그를 찾으려고합니다. 명령 줄에서 어떻게 할 수 있습니까? 모든 다운로드를 피하고 불필요한 이미지를 제거하려고합니다. 공식 우분투 릴리스 https://registry.hub.docker.com/_/ubuntu/ 에는 몇 가지 태그 (릴리스)가 있지만 명령 줄에서 검색하면 user@ubuntu:~$ docker search ubuntu | grep ^ubuntu ubuntu Official Ubuntu base image 354 ubuntu-upstart Upstart is an event-based replacement for ... 7 ubuntufan/..

program tip 2020.12.31
반응형