반응형 전체 글118 [Gradle] Gradle - Task개념 및 jar 생성 후 복사하기(.feat Copy) Gradle은 Maven과 함께 많이 사용되는 빌드툴입니다. Task를 Custom하여 jar파일 생성 후 해당 파일을 원하는 경로에 복사하는 것까지 진행해보겠습니다. Task란? 빌드로 수행되는 하나의 독립적인 유닛으로, compile, jar생성, javadoc생성, publish모두 Task의 일종입니다. → build script나, plugin으로부터 Task를 가져올 수 있습니다. 아래는 java라는 플러그인을 호출하면, java와 관련된 task를 활용할 수 있습니다. plugins { id 'java' } 현재 활용 가능한 task는 터미널에서 ./gradlew tasks로 확인할 수 있습니다. // gradlew파일이 있는 위치에서 ./gradlew tasks Build tasks ---.. Gradle 2024. 1. 31. [Python] PyQt - QHBoxLayout()을 활용한 커스텀 위젯 이 포스팅의 목적은 다음과 같은 위젯이 하나의 위젯으로 활용할 수 있도록 합니다. CustomWidget 기능 1. CustomWidget은 QWidget을 HBox형태로 가집니다. 2. CustomWidget은 MainWidget 내에 추가가 가능해야한다. MainWidget > CustomWidget > QWidget CustomWidget 구현 1. QWidget 상속 QWidget을 상속받은 CustomWidget을 하나 만들어줍니다. class CustomWidget(QWidget): def __init__(self, *args): super().__init__(*args) CustomWidget 구현 2. QHB oxlayout 다음으로 CustomWidget은 QHBoxlayout()을 활용.. Python 2024. 1. 29. [용어] 웹서비스 - 프론트/백 오피스, 프론트/백엔드 간단하게 용어에 대해서 정리해봤습니다. 프론트 오피스 - Front Office(사용자가 이용) 사용자가 서비스를 이용할 수 있는 웹 또는 앱 네이버나 카카오 등 소비자가 사용하는 웹이나 앱이 여기에 해당하겠네요 - 사용자 경험이 중요하기 때문에 디자인이 중요합니다. - 비즈니스를 담당 백 오피스 - Back Office(서비스 관리에 이용) 서비스를 관리하기 위한 웹 또는 앱 네이버나 카카오 서비스를 지원하기 위해서, 사내 직원들이 사용하는 프로그램이 여기에 해당하겠습니다. - 프론트 오피스를 관리하기 위한 목적으로, 디자인은 크게 중요하지 않습니다. - 유저 정보 관리, 광고, 상품 관리, 삭제 등을 담당 - 관리자 페이지가 백오피스에 해당하겠습니다. 정리 백 오피스의 데이터(모델)을 기반으로 프론트.. 개념 2024. 1. 13. [Python] PyQt - QPushButton에 이미지/아이콘 추가해서 아이콘 버튼 만들기! 아이콘 버튼 - only Icon 버튼에 아이콘을 넣고 싶은건 너무나 자연스러운 것 같습니다. QPushButton에 image를 추가하면 쉽게 아이콘 버튼을 생성할 수 있습니다. self.btn_undo.setIcon(QIcon('./icon/undo.png')) # 버튼.setIcon(QIcon(이미지경로)) self.btn_redo.setIcon(QIcon('./icon/redo.png')) 아이콘 버튼의 경우 크기가 고정되는 것이 좋기 때문에, Button의 크기는 50px로 icon의 크기는 30px로 고정해주었어요 아이콘 버튼 - Icon + Text 아이콘과 Text를 같이 넣을 수도 있어요! text를 입력한 채로 icon을 추가해주면 됩니다. 다만, 이때는 QWidget에서 최대 너비를 .. Python 2024. 1. 10. 블록코딩의 특징 및 대표 서비스(blockly, scratch, code.org) 들어가며 블록코딩 프로그램 제작에 앞서서, 기존 블록코딩에 대해서 알아보았습니다. 서치가 부족한 상태로 UI를 만들다보니, 부족한 점이 보여서 반성하고 블록코딩 자체에 대해서 간략하게 알아봤습니다. 블록코딩이란? "드래그-앤-드랍" = 끌어서 놓기로 프로그램을 만들 수 있는 코딩 언어입니다. 각 블록은 미리 프로그램된 내용이 들어가 있어, 이를 끌어다 놓아서 프로그램을 만들 수 있습니다. 진입장벽이 낮고 직관적인 UI로 쉽게 프로그래밍을 접할 수 있습니다. 단점 - 블록에 지정된 코드 변경이 어려움 - 섬세한 프로그래밍이 어렵습니다. - 코딩 능력 향상에는 제한이 있음 - 자세한 프로그래밍이 어렵다보니.. 블록코딩 서비스 - 스크래치 - Scratch : https://scratch.mit.edu/pro.. 카테고리 없음 2024. 1. 9. [Python] PyQt 실행 및 사용법(feat. pycharm) PyQt란? python GUI(Graphic User Interface)를 쉽게 제작할 수 있게 만든 python 패키지입니다. 개발환경 설정 - Anaconda 개발환경 설정이 안되신분들은 여기 참고해주세요 [Python] Anaconda 및 Pycharm 설치 - 파이썬 개발환경 설정 Python으로 프로젝트를 진행하게 되어서 설치를 진행해보겠습니다. - 개별 실행환경 구축에 용이하다는 conda를 활용하기 위해서 Anaconda를 써보겠습니다. 아나콘다란? 파이썬과 R 개발자를 위한 여 developerpearl.tistory.com anaconda를 설치하면 pyqt5버전이 함께 설치되어 있습니다. Pyqt 설치 확인 명령어 - terminal에서 아래 명령어를 입력하면 pyqt 설치된 버전을 .. Python 2024. 1. 7. [Python] Anaconda 및 Pycharm 설치 - 파이썬 개발환경 설정 Python으로 프로젝트를 진행하게 되어서 설치를 진행해보겠습니다. - 개별 실행환경 구축에 용이하다는 conda를 활용하기 위해서 Anaconda를 써보겠습니다. 아나콘다란? 파이썬과 R 개발자를 위한 여러 도구를 모아둔 집합체이자, 오픈 소스 배포판입니다. 머신러닝이나 데이터 분석 등에 사용하는 여러 패키지가 기본적으로 포함되어 있으며, 파이썬 가상 환경 구축에도 용이합니다. conda라는 환경/패키지 관리자가 존재하며, 이를 통해서 패키지를 설치하거나 가상 환경을 관리할 수 있습니다. 일반 파이썬의 경우 pip를 통해서 패키지를 설치, 삭제 등 관리를 하게 됩니다. pip는 Python Package Index(PyPI) 저장소로부터 파이썬 패키지 받아서 설치하는 패키지 관리도구입니다. 아나콘다설치.. Python 2024. 1. 7. [Flutter] Firebase 광고 추가 google_mobile_ads- 12.06 3.1 버전으로 pubspec.yaml파일 업데이트. google_mobile_ads: ^3.1.0 # 파이어베이스 애드몹 패키지 Admob가입 시 이슈 - AdMob페이지가 제대로 들어가지지 않음 -> 광고 차단 프로그램 확인 나머지는 이 방법 따라서 쭉 진행 https://deku.posstree.com/ko/flutter/admob/ [Flutter] Admob이번 블로그 포스트에서는 Flutter로 생성한 앱에 google_mobile_ads 패키지를 사용해서 Admob 광고를 표시하는 방법에 대해서 살펴봅시다.deku.posstree.com 이슈 2. Play Console의 광고 ID 선언에는 앱에서 광고 ID를 사용한다고 명시되어 있습니다. 활성 아티팩트 중 하나의 매니페스트 파일에 com... Flutter 2023. 12. 6. [Konva] 유사 CAD 프로그램 제작 - 성능 향상의 기록 Web으로 편집 프로그램 제작을 위해서 회사에서 선택한 것은 Konva.js 왜 선택했는지에 대해서는 넘어가고, 이미 konva로 프로젝트를 진행중이고, 성능 개선이 필요하다면 읽어보면 좋을 것 같다. 문제 상황 사내용으로 만드는 유사 CAD 프로그램이었다. 한 번에 그려지는 객체수는 (1)약 5만개 이상 그리고 각 객체는 (2)위치 이동이 가능해야하며 독립적이지 않고 (3)연관되어 있다. 성능 이슈 작은 개수는 충분히 편집이 가능할 정도의 성능이 나왔다. 하지만, 5만개 정도면 한 번 움직이는데 수 초가 걸릴 정도로 성능이 저하되었다. 도저히 편집기로 사람이 쓸 수 없을 정도였다. 크게 세 가지로 정리하면 1. 대량의 데이터를 한 화면에 보여줄 것 2. 한 화면에서 편집이 가능할 것 3. 1, 2가 너.. WEB/JavaScript 2023. 11. 20. [Java] Thread - 바쁜 대기, Method이해하기, 주기적 실행 권한을 얻을 때까지 확인한다. Busy Waiting 주기적인 실행, 특정 시간 이후 실행 등의 작업을 하고 싶을 때는 Timer, TimerTask 같은 클래스를 활용도 고려해보자~ (java.util 에서 제공한다.) 동기화 문제와 바쁜 대기를 해결하여 구현되어 있다. 최근 Web으로 interactive하게 편집할 수 있는 편집기를 프로젝트로 진행하고 있다. 미리캔버스, Figma 등과 같은 느낌이라고 보면 될 것이다. 편집기에는 임시저장이 필수인데, 이를 구현하다보니 while을 사용한 무한루프로 특정 시간(10분)이 지날때마다 임시저장을 하도록 구현했다. Thread threadA = new Thread(()->{ while(flag){ if(LocalDateTime.now().getSecond.. 개념 2023. 10. 20. [React] BootStrap css가 적용되지 않을 때..! 공식 문서 Introduction | React Bootstrap Learn how to include React Bootstrap in your project. react-bootstrap.netlify.app 설치 정상완료 -> css만 적용안됨 아래 과정을 따라 bootstrap을 설치하면 component도 잘 불러와지지만, 정작 css는 적용되지 않는다. npm install react-bootstrap bootstrap 해결 최상단의 index.tsx에 아래와 같이 import를 해주면 바로 된다. import 'bootstrap/dist/css/bootstrap.css'; React-Bootstrap is a complete re-implementation of the Bootstrap co.. 카테고리 없음 2023. 10. 18. SQL/ 병행제어/ 로킹/ 교착상태(Dead Lock) SQL문 DDL - Data Definition Language . DB, Table, View, Index 등을 정의(생성, 삭제, 갱신)할 때 사용하며, CREATE, ALTER, DROP 등이 있다. . 도스테뷰인( Domain, Schema, Table, View, Index) - 인덱스 종료 . 순서 인덱스 : 데이터가 정렬된 순서대로 생성되는 인덱스 . 해시 인덱스 : 해시 함수에 의해 키 값으로 접근 . 비트맵 인덱스 : bit값인 0또는 1로 변환하여 인덱스 키로 사용 . 함수기반 인덱스 : 수식이나 함수 적용 . 단일 인덱스 : 하나의 컬럼으로만 구성 . 결합 인덱스 : 두개 이상의 컬럼으로 구성 . 클러스터드 인덱스 : 인덱스 키의 순서에 따라 데이터가 정렬되는 방식 : 검색빠름 . 넌.. 개념/정보처리기사 2023. 10. 3. 이전 1 2 3 4 5 6 ··· 10 다음 반응형