반응형

분류 전체보기 1418

Part 5-2-17. SQL 입문 : TRANSACTION, COMMIT/ROLLBACK

💅 SQL 입문  지난 시간에는 JOIN을 통해 복수의 테이블에서 공통 열을 통해 테이블 정보를 살펴보는 내용에 대해서 알아보았다. 이번 시간에서는 TRANSACTION과 COMMIT, ROLLBACK 등 개념을 통해 테이터 처리 및 취소 여부에 대해 알아보는 시간을 가지자.   📨 TRANSACTION 트랜잭션이란 무엇일까? 검색해보니 '더 이상 쪼갤 수 없는 업무 처리의 최소 단위이다.'라고 나와 있다. 개념적으로 학습하기에는 쉽게 이해가 되지 않으므로 예시를 통해 알아보자.  예를 들어, A라는 사람이 B라는 사람에게 1,000원을 지급하고 B가 그 돈을 받은 경우, 이 거래 기록은 더 이상 작게 쪼갤 수가 없는 하나의 트랜잭션을 구성한다. 그러나 A는 돈을 지불했으나 B는 돈을 받지 못했다면 ..

Part 5-2-16. SQL 입문 : JOIN, CROSS/INNER/LEFT/RIGHT JOIN

💅 SQL 입문  지난 시간에는 UNION을 통해 복수의 테이블을 다루는 내용에 대해서 알아보았다. 이번 시간에서는 INDEX와 같이 정말 너무나도 중요한 JOIN에 대해서 알아보는 시간을 가진다.  ❌ JOIN 우리가 배우고 있는 RDBMS에서는 1~6 정규화를 통해 테이블을 적절히 나누어서 관리한다. 따라서 나누어서 관리하는 이러한 테이블들을 합치기 위해서는 JOIN 연산을 통해 이를 처리한다. JOIN 연산에는 크게 다음과 같은 종류가 있다. CROSS JOININNER JOINOUTER JOIN (LEFT/RIGHT)  ❌ CROSS JOIN CROSS JOIN이라고 명칭하는 걸 보니 무엇인가를 '교차' 시키는 느낌을 받을 수 있다. 저번에 생성했던 GameDB를 이용하여 다음과 같은 테이블과 ..

지금부터 향후 30년은 창업하기 가장 좋은 시기가 될 겁니다.

1. VC 구조조정이 일어나고 있어요. 투자판이 바뀌고 있다는 얘깁니다. 2. AI 기반의 새로운 미디어 생태계가 열릴 겁니다. ‘레거시 미디어 종말론’은 지금까지 계속 있어 왔지만, AI가 미디어 생태계 내에 인력 구조 자체를 바꿀 수 있기 때문에, 이로 인한 파급 효과는 예상보다 클 수 있습니다. 그리고 미디어 생태계가 바뀐다는 건 정보와 광고의 유통 패러다임이 바뀐다는 뜻이기 때문에, 이런 변화는 사회 전반에 큰 영향을 미칠 겁니다. 3. 앞으로는 크리에이터와 잘 연결되는 사업자들이 살아남을 겁니다. 이미 A급 크리에이터 한 명의 영향력과 그들이 확보한 독자들은 기존 미디어 수준입니다. 다만, 크리에이터들의 비즈니스 역량이나 운영 역량은 꽤 떨어지는데요. 따라서 앞으로는 크리에이터들과 지속적인 협업..

공부/자기계발 2024.03.06

불경기 취업 너무 어렵죠?

요즘 경기가 안 좋다보니 특히 신입이나 주니어 취업이나 이직이 쉽지 않다. 특히 미국에서 공부하는 유학생들이라면 비자 등의 문제로 시간적으로 여유가 많지 않기에 마음이 더 급할 수 밖에 없다. 거기에 들어간 돈과 시간을 생각하면 더 조급해진다. 기본적으로 경기가 안 좋아지면 회사들이 채용을 줄이고 채용의 초점을 경력자로 옮기니 그런 듯 하다. 요즘 다수의 신입 혹은 주니어 개발자들의 이력서를 리뷰했는데 이 정도면 최소 인터뷰는 몇 번 봤으리라 생각되는 이력서도 아예 기회가 없는 경우들이 허다했다. 나도 큰 애가 대학 4학년이라 남 일이 아니다. 하지만 사실 리먼 사태가 터졌을 때도 동일한 문제가 있었고 더 앞으로 가보자면 닷컴 버블 꺼지고 9/11 터졌을 때도 동일한 이슈가 있었다. 그보다 더 앞으로 가..

공부/자기계발 2024.03.06

나의 가치를 향상 시키는 방법 (부제: 내가 야근을 하는 이유)

"목표를 이루기 위해 고민했다." 나의 목표는 기술적으로 뛰어난 개발자가 되어 억대 연봉을 받는 것이다. 어떻게 해야 뛰어난 개발자가 될 수 있고 이것을 인정받아 억대 연봉을 받을 수 있을까? 많은 고민 끝에 내린 결론은 매우 단순했다. 내가 내린 결론은 내가 다니는 기업에 '받은 것보다 더 많은 것을 주는 것'이다. 하지만 이 단순한 결론에 도달하기까지에는 많은 고민이 있었다. 고민을 하게 된 이유는 주변 사람들이 받은 만큼 일해야 한다고 말했기 때문이다. 내가 어떻게 이 단순한 결론에 도달하게되었는지 고민의 과정을 정리하는 포스팅이 될 것이다. 더 읽어보기 및 출처 : 티스토리 '초급에서 고급까지'님 https://jfbta.tistory.com/279 나의 가치를 향상 시키는 방법(부제: 내가 야근..

공부/자기계발 2024.03.06

유니티 AOS 빌드 시 나타나는 에러 정리

최초 작성일 : 24.03.05 수정일 : X.X.X AOS를 빌드하면서 다음과 같은 에러들이 나타났는데, 이 때에 어떻게 해결했는지를 까먹지 않고 정리하기 위해 작성한다. 그래야 나중에 나도 혹시 까먹으면 참고하기 위해... 🤣 나의 해결 과정 순서 : 첫 빌드 시 에러는 1, 2, 4가 떴었으며 1을 해결하니 3, 5가 나타났다. 에러 3번 같은 경우는 내 해결범위 안을 벗어나는 것 같아 에러 5번을 해결하고자 하였으나 점점 일이 커지는 것 같았다. 따라서 상황을 전부 롤백하여 에러 4를 해결하였더니 모든 것이 완벽하게 동작하였다. 😎 에러 1. AndroidManifest 파일 내 퍼미션 에러 에러 전문 : uses-ermission#android.permission.READ_EXTERNAL_STO..

개발/유니티 2024.03.04

뒤끝 GPGS V2 관련 SDK 전환 시, Xcode 빌드 시 나타나는 에러

https://community.thebackend.io/t/gpgs-v2-id/6908 GPGS V2 지원 및 구글 차세대 플레이어 ID 정책 관련 긴급 안내 안녕하세요, 게임 서버 뒤끝입니다. 2024년 3월부터 적용되는 차세대 플레이어 ID의 강제 의무화와 관련하여 뒤끝에서는 2월 27일 정기 업데이트를 통해 GPGS V2 를 지원할 예정입니다. GPGS V1 => V2 이 community.thebackend.io 24년 2월까지 구글에서 현재 서비스 중인 GPGS V1이 3월부터 V2로 업데이트가 된다. 이에 따라 부득이하게 현재 라이브 서비스 중인 게임의 뒤끝 SDK를 업데이트 해주었다. 그러나 위 링크에서 알려주는 '뒤끝 구글로그인 SDK' 링크로 이동해 뒤끝에서 제공하는 유니티 패키지를 설..

개발/유니티 2024.03.04

Part 5-2-15. SQL 입문 : UNION, INTERSECT, EXCEPT

💅 SQL 입문 지난 시간에는 정말 너무나도 중요하고 중요한 INDEX의 개념과 INDEX의 종류 등에 대해서 알아보았다. 이번 시간에는 UNION, INTERSECT, EXCEPT 개념을 통해 복수의 테이블을 다루는 개념에 대해서 알아보는 시간을 가진다. ➕ UNION 커리어 평균 연봉이 3백만달러 이상인 선수들의 ID와 평균을 출력해보자. 각 선수들의 평균 연봉이어야 하므로, AVG, Group By와 Having 등을 이용하여 출력할 수 있다. SELECT playerID, AVG(salary) FROM salaries Group BY playerID HAVING AVG(salary) >= 3000000; 이번엔 간단하게 12월에 태어난 선수들의 ID를 출력해보자. SELECT playerID, b..

Part 5-2-14. SQL 입문 : INDEX

💅 SQL 입문 지난 시간에는 정규화를 통해 데이터베이스 내 중복된 데이터를 분리하여 관리하는 방법에 대해서 알아보았다. 이번 시간에는 INDEX(=색인) 이라는 개념을 통해 데이터베이스 내 엄청나게 많은 데이터속에서 보다 빠르게 조회하는 방법과 인덱스의 종류인 클러스터, 논 클러스터형에 대해서 알아보는 시간을 가진다. 📖 INDEX 인덱스는 중요도를 평가할 수 없을 정도로 데이터베이스에서 매우 중요한 개념이다. 애시당초 인덱스를 이해 못한다고 하면 데이터베이스 자체를 사용하는게 큰 의미가 없을 정도로 인덱스는 굉장히 중요하다. 이러한 중요성 덕분에 데이터베이스 관련 면접을 본다고하면 0번째 질문이 인덱스에 관한 내용일 정도로 인덱스는 매우 중요하다. 위키백과에 따르면 인덱스(영어: index)는 데이터..

Part 5-2-13. SQL 입문 : 정규화

💅 SQL 입문 지난 시간에는 새로운 데이터베이스를 직접 만들어보고, 열도 생성하며 데이터를 삽입하고, 수정하고, 삭제하는 것과 제약(CONSTRAINT)에 대해서 알아보았다. 이번 시간에는 정규화라는 개념을 통해 데이터베이스 내 중복된 데이터를 분리하며 설계하는 방법에 대해서 알아보는 시간을 가진다. ➗ 정규화 정규화는 테이블을 올바르게 올바르게 변경하고 분할하기 위해서 존재한 개념이다. 사실 SQL 챕터는 정보처리기사 자격증을 준비하면서 학습했던 내용이라 강의를 듣는데 큰 어려움이 없다. 자격증 내에서 정규화는 크게 1~6 정규화까지 존재하는데 강의에서는 모든 정규화 유형에 대해서 굳이 외울 필요는 없고, 나중에 데이터베이스 설계시 저절로 알게 된다고 말씀해주셨다. 예를 들어 임의의 데이터베이스가 위..

Part 5-2-12. SQL 입문 : 데이터베이스 작성

💅 SQL 입문 지난 시간에는 SUBQUERY를 통해 "하나의 SQL문에 또 다른 SQL문"을 작성하여 보다 편리하게 데이터를 조회하는 방법에 대해서 알아보았다. 이번 시간에는 데이터베이스를 새롭게 만들어보며 데이터를 추가, 삭제, 수정하는 등 데이터베이스를 작성하는 시간을 가져본다. 🎀 DataBase 지금까지는 기존에 존재하던 BaseBall 데이터에 쿼리를 실행하였다면, 이번에는 우리가 직접 데이터베이스를 작성하는 시간을 가져보자. 우리는 MMORPG 게임을 개발할 예정이니 게임과 관련덴 데이터베이스를 새롭게 만들어보자. 이러한 데이터베이스를 '스키마'라고 부르기도하니 참고하도록 하자. 🎀 CREATE 데이터베이스를 만드는 행위는 아주 간단하다. 다음과 같은 형식을 띈다. CREATE DATABAS..

Part 5-2-11. SQL 입문 : SUBQUERY

💅 SQL 입문 지난 시간에는 INSERT, DELETE, UPDATE를 통해 데이터를 검색뿐만 아니라, 추가, 삭제, 수정에 대해서 알아보았다. 이번 시간에는 SUBQUERY라는 개념에 대해서 학습하고 어떠한 상황에서 무슨 목적으로 사용하는지 알아보는 시간을 가져보도록 한다. ⛷️ SUBQUERY(서브쿼리, 하위쿼리) 서브쿼리를 한 줄로 요약한다면 "하나의 SQL문에 포함되어 있는 또 다른 SQL문"을 뜻한다. 정의로만 설명을 들으면 무슨 말인지 어렵기때문에 간단한 예시를 통해 서브쿼리에 대해서 알아가보도록 하자. ⛷️ WHERE 절에서의 SUBQUERY 활용 간단한 예를 들어보자. "연봉이 역대급으로 가장 높은 선수의 정보"를 출력한다고 가정하자. 지금까지 학습한 내용을 토대로 해당 선수의 정보를 출..

커리어 중간점검! 포트폴리오로 전문성 발견하기

어느 정도 연차가 쌓이면 나의 전문성을 의심하게 됩니다. 회사생활은 오래 했는데도 무엇 하나 제대로 할 수 있을지 고민스럽고요. 신입사원 때야 작은 업무에도 벅찼지만 이제는 진짜 중요한 업무를 해야 하지 않을까 조바심마저 드는데요. 내가 어떤 일을 해왔는지 제대로 설명할 수 없을 때, 전문성이 무엇인지 고민될 때 포트폴리오를 정리해보기 딱 좋은 시기입니다. “엥? 당장 이직할 것도 아닌데, 웬 포트폴리오?”라고 생각할 수도 있어요. 보통 포트폴리오는 보통 취업할 때 필요한 문서 중 하나라고 생각하니까요. 하지만, 재직 중 미리 커리어를 정리해 두면 여러 가지 이점이 있어요. 연차가 쌓인 지금, 그저 마감이 급해 성과 정리를 못한 업무를 정리해 볼 수 있고요, 커리어 방향성까지 점검할 수 있는 기회가 되거..

회사/인사 2024.02.13

성공적인 이직을 위한 3가지 방법, 이것만은 필수!

아무것도 모르는 햇병아리 신입사원으로 사회생활을 시작한 게 엊그제 같은데, 어느덧 제 몫을 제법 해내는 주니어와 시니어 사이, 중니어가 되었습니다. 익숙한 업무, 편안한 환경에서 벗어나 이제는 새로운 회사로 커리어 점프가 필요한 때! 그런데 이직 준비는 대체 어떻게 해야 하는 것인지 눈앞이 깜깜합니다. 헤드헌터한테 면접 제안을 받았다, 기업으로부터 러브콜을 받았다고 하는 주변인들의 이야기는 온통 다른 나라 이야기 같기만 하고요. 당장 현직장을 탈출해야 하는 건 아니더라도, 제때 좋은 기회를 찾아서 더 큰 바다로 나가고 싶다면 옷 매무새를 다듬고 신발끈을 고쳐 매듯 만반의 준비를 해보자고요. 뭐부터 시작해야 할 지, 어떻게 준비해야 하는지 지금부터 하나하나 알려드릴게요. 출처 및 더 읽어보기 : 잡플래닛 ..

회사/인사 2024.02.13

헤드헌터가 알려주는 이직 준비

Step. 1 이직 시장이 활발해지는 요즘, ‘새로운 도전을 해볼까’ 생각하시는 분들이 많아졌어요. 이직에 성공한 주변 사람들의 이야기를 듣거나, 현재 속한 조직에서 불만스러운 상황들이 쌓이게 되면 당장 이직하고 싶은 생각이 들기도 하는데요. 준비를 충분히 하지 않고 이직을 시도하다 보면, 성공 확률이 떨어질 뿐만 아니라 커리어 개발에도 부정적인 영향을 끼치게 됩니다. 오늘은 이직을 준비하는 방법에 대해 알아볼게요. 이 과정은 이직뿐 아니라 첫 취직 준비에도 적용할 수 있으니, 잘 활용해보세요! 세 가지 질문에서 시작하는 이직 ‘만족스러운 이직’의 기준은 사람마다 다릅니다. 나에게 맞는 직업을 찾을 때는 아래 세 가지 판단기준을 축으로 삼각형을 그려보시는 걸 추천 드려요. 1. 내가 좋아하는 일인가? 2..

회사/인사 2024.02.13

Part 5-2-10. SQL 입문 : INSERT, DELETE, UPDATE

💅 SQL 입문 지난 시간에는 그룹화(GROUP BY)를 통해 데이터를 새롭게 검색하는 방법에 대해서 알아보았다. 또한 GROUP BY를 사용할 때에는 HAVNING 이라는 키워드까지 함께 사용하여 WHERE 절과 동일한 느낌으로 조건을 추가하는 것 까지 알 수 있었다. 이번 시간에는 SELECT가 아닌 INSERT, DELETE, UPDATE를 통해 검색뿐만 아니라, 데이터 추가, 수정, 삭제에 대해서 알아보는 시간을 가져보도록 한다. 🐲 테이블 변경 기존에 사용하던 Players 테이블이 아닌 salaries 테이블을 이용하여 실습을 진행할 것이다. salaries 테이블 정보 salaries 테이블 정보는 크게 yearID(연도), teamID(팀 ID), lgID(리그 ID), playerID(선..

Part 5-2-9. SQL 입문 : GROUP BY

💅 SQL 입문 지난 시간에는 이전까지 알아본 내용을 토대로 간단한 연습 문제를 풀어보았다. 오늘은 새로운 명령어인 GROUP BY에 대해서 알아보는 시간을 가져보도록 한다. 👻 GROUP BY GROUP BY는 컬럼을 그룹화 할 때 사용한다. 예를 들어 2004년도 보스턴 팀 소속으로 출전한 선수들의 타격 정보는 알아보고 싶다면 다음과 같이 작성하면 될 것이다. SELECT * FROM batting WHERE yearID = 2004 AND teamID = 'BOS' 그렇다면 만약 2004년도에 가장 많은 홈런을 날린 팀이 어딘지 알고 싶다면 어떻게 해야할까? 지금까지는 위와 같이 WHERE 절에 teamID등을 명시하여 작성했지만, 이젠 명시를 할 수 없으니 참 곤란하다. 어떻게 처리해야 할 지 과..

Part 5-2-8. SQL 입문 : 연습문제

💅 SQL 입문 지난 시간에는 집계 함수(COUNT, SUM, MIN, MAX 등)를 이용하여 데이터베이스에서 내가 필요한 정보만 추출하는 방법에 대해서 알아보았다. 오늘은 이전까지 알아본 내용을 토대로 간단한 연습 문제를 풀어볼 것이다. 😈 테이블 변경 이번 시간에서는 연습 문제를 풀어볼 것이지만, 기존에 사용하던 players 테이블이 아닌 batting 테이블을 이용하여 문제를 풀이할 것이다. 문제를 풀기 전, 테이블의 사전정보를 살펴보면 다음과 같다. batting 테이블 정보 playerID(플레이어id), yearID(시즌 년도), teamID(팀 명칭), G_batting(출전경기+타석) AB(타수), H(안타), R(출루), 2B(2루타), 3B(3루타), HR(홈런), BB(볼넷) 다음은..

Part 5-2-7. SQL 입문 : 집계함수 (COUNT, SUM, AVG, MAX, MIN, DISTINCT)

💅 SQL 입문 지난 시간에는 CASE를 이용하여 C#에서 사용하는 것과 같이 if-else if-else를 이용하여 처리하는 법, 비교를 이용하여 처리하는 방법 등 관련된 다양한 내용에 대해서 알아보았다. 오늘은 집계함수에 대해서 학습해 볼 것이다. 🧮 COUNT 행의 개수를 세는 집계 함수이다. SELECT COUNT(*) --모든 행의 개수 FROM Players; *은 모든 행의 개수를 뜻한다. 이렇게 *을 파라미터로 받을 수 있는 집계 함수는 COUNT가 유일하다. SELECT COUNT(birthYear) --null 은 제외하고 카운팅 FROM Players; COUNT를 비롯한 집계 함수들은 기본적으로 null 값은 제외하고 값을 카운팅 다. 즉, 위 코드는 null 값을 가진 birthY..

반응형