Google App Script - 캘린더 내 ToDo List 같이 사용해보기 (2)
·
개발 - 언어/JavaScript
/***** 설정 *****/const CAL_NAME = 'EXAM NAME💻'; // 전용 캘린더 이름const EVENT_TITLE = '✅Todo List'; // 매일 생성할 종일 이벤트 제목const LOG_SHEET_NAME = 'List Script Log'; // 실행 로그를 쓸 구글 스프레드시트 이름/***** 공통: 주말 유틸 *****/function isWeekend_(date = todayDate_()) { const d = date.getDay(); // 0=Sun, 6=Sat return d === 0 || d === 6;}function getOrCreateLogSheet_() { const files = DriveApp.getFilesBy..
Google App Script - 캘린더 내 ToDo List 같이 사용해보기
·
개발 - 언어/JavaScript
/***** 설정 *****/const CAL_NAME = 'EXAM NAME💻'; // 전용 캘린더 이름const EVENT_TITLE = '✅Todo List'; // 매일 생성할 종일 이벤트 제목const LOG_SHEET_NAME = 'List Script Log'; // 실행 로그를 쓸 구글 스프레드시트 이름/***** 스프레드시트 로깅 유틸 *****/function getOrCreateLogSheet_() { // 같은 이름의 스프레드시트가 있으면 첫 번째를 사용, 없으면 생성 const files = DriveApp.getFilesByName(LOG_SHEET_NAME); let ss; if (files.hasNext()) { ss = Spreads..
MySQL → Oracle 함수/구문 변환 정리
·
개발 - 언어/SQL
📌 기본 함수 매핑MySQLORACLENOW()SYSDATE (초 단위)SYSTIMESTAMP (밀리초까지)CURDATE()TRUNC(SYSDATE)DATE_FORMAT(d, '%Y-%m-%d')TO_CHAR(d, 'YYYY-MM-DD')STR_TO_DATE(s, '%Y-%m-%d')TO_DATE(s, 'YYYY-MM-DD')IFNULL(expr, alt)NVL(expr, alt)COALESCE(a,b,c)동일: COALESCE(a,b,c)CONCAT(a,b,c)a || b || cLENGTH(str)LENGTH(str) (문자 개수)LENGTHB(str) (바이트 수)SUBSTRING(str, pos, len)SUBSTR(str, pos, len)LOCATE(substr, str)INSTR(str, ..
React - 상태관리와 지속적 갱신 가능한 data 관리 및 API
·
개발 - 언어/React
전역 Auth Store (Zustand 권장)user, status, etag(캐시 비교 API용도), permissions(혹은 권한 관련 data) 위주로 저장Rotue GuardApp 진입 혹은 Routing시에 ensurePermissions()접근조건 확인이기 때문에 하위 Component에서는 호출금지.재검증 트리거새로고침(F5)/탭 포커스/online 이벤트 → 지정 TTL 이상시 ensurePermissions() 서버에서 권한 변경(추가/삭제 등 수정 시): WebSocket/SSE Event → ensurePermissions({ force:true })Server권한 API res에 ETag Headerreq if-None-Match가 같을 시 304 Not Modifed권한 수정 ..
C# vs TypeScript ?:, ?., ? : 비교 정리
·
개발 - 언어/React
1️⃣ ?: (Optional Property)📌 TypeScripttype User = { id: number name?: string // 있어도 되고 없어도 됨}const u1: User = { id: 1, name: "Tom" }const u2: User = { id: 2 } // name 생략 가능console.log(u2.name) // undefined👉 ?: 는 프로퍼티가 없어도 된다는 의미 (없으면 undefined)📌 C#public class User { public int Id { get; set; } public string? Name { get; set; } // null 허용}var u1 = new User ..
React Project structure 이해
·
개발 - 언어/React
⚛️ React 프로젝트 구조, 빠르게 파악하는 방법새로운 React 프로젝트에 참여하거나, 오픈소스 프로젝트 코드를 처음 열어보면 “어디서부터 봐야 하지?” 하는 고민.짧은 시간 안에 전체 구조를 이해하려면 몇 가지 핵심 관문을 짚는 게 효율적.1️⃣ 최상위 설정 파일 확인package.json어떤 빌드도구를 쓰는지 (CRA, Vite, Next.js 등)주요 라이브러리 (React Router, Redux, Zustand, React Query 등)스크립트(dev, build, lint, test)환경/설정 파일vite.config.ts, webpack.config.js, next.config.js → 빌드 및 번들링 구조tsconfig.json → 경로 별칭(@/…) 확인.eslintrc, .pre..
수토리지
Code_Sootorage