[Java] Beginners want to make dating. 1st

Synopsis

Why are you learning a language? Even if you talk about synchronization with Honne base, it's different for each person.

I am also one who wants to make the same Nanika as you.

Well, it's good to meet. I felt that December 25th was coming up, but I didn't have a partner, so I was alone this year.

An app that everyone has registered like LINE? Isn't it? Then I could approach that cute girl standing in front of Hachiko. (On the contrary, problem ant? Lol)

LINE can be done even by minors, but dating is R18. Please do not take a closer look at good children, including those hits.

Now, let's start the defense record of the Heppoko programmer.

Implementation preparation [thought]

** It is better for nearby people to understand by location information and distance ** For example, even if you enclose it in "Hokkaido", if it is far away, it will end up as just a chat partner However, it's a little bit to pin it on Google Maps.

** Are you aiming for AI? ** ** Is it Python? No Java. I want to do machine learning, but I don't feel like I can go that far. It would be nice if we could put out compatibility (◎ heaven O-net?) Depending on the degree of matching of each other's hobbies. At this stage, it seems a little impossible, so I will aim for hobby search.

** Because it is a global society ** There are languages and countries of origin. Sexual orientation is also global. I also want to chat with a white man with blonde hair. If you can filter by the country you want to go to or location information "I'm going on a trip in May, so if you like, you can have a meal." Let's make the first goal to complete it in Japanese (laughs)

UI? UX? There is no choice but to choose a country, but if possible, use radiobtn rather than combo! When entering, you have to tap (1) combo (2) select an item twice in total. In that respect, I heard that radio is good because you can select it with just one push. When it comes to UI design and UX, I think it's still a long way off ...

Implementation preparation [database]

First of all, it's a database. I don't want to make a big update to expand the function later, so I want to put it all out now!

The following is the information received from various places. Questions will be written in the section below. If you have an opinion that "this is the person here", we welcome your comments!

** Public information ** ・ Name --VARCHAR (12) ** NOT NULL ** // Name or nickname ・ Pic1 --TEXT (-) ** NULL ** // Photo upload cloud URL (up to 5) ref.1 ・ Sex --INT (2) ** NOT NULL ** // Gender [01. Male 02. Female] ・ Sexual --INT (2) ** NOT NULL ** [01.Straight 02.Les 03.Gay 04.Bi 05.Trans 06.Queer 07.X 08.asexual 09.IS] ・ IntSex --INT (2) ** NOT NULL ** // Target [01. Male 02. Female 03. Bi… Hmm? ] ・ Height --INT (3) ** NOT NULL ** // Height ・ Weight --INT (3) ** NOT NULL ** // Weight ・ Birthday --DATE (8) ** NOT NULL ** // Birthday ・ Location --GEOMETRY (-) ** NULL ** // Location information ref.2 ・ Local --VARCHAR (12) ** NULL ** // Place of residence ・ Country --INT (3) ** NOT NULL ** // Hometown 365 countries ・ Lang --SET? ENUM? ** NOT NULL ** // Language ref.3 ref.4 ・ Body --INT (2) ** NOT NULL ** // System [01. Skinny 02. Normal 03. Muscular 04. Chubby] ・ Married --INT (2) ** NOT NULL ** [01. Married 02. Single] ・ Child --INT (2) ** NOT NULL ** [01. With children 02. No children] ・ Profile --VARCHAR (120) ** NOT NULL ** // Self-introduction

** Private information ** ・ UID (UUID) --BINARY (16) ** NOT NULL ** // User ID ref.5 -EAddress --VARCHAR (256) ** NOT NULL ** ref.6 ・ PW --VARCHAR (256) ** NOT NULL ** // SHA256 ・ Userlvl --INT (3) ** NOT NULL ** // User level [01. Free member 02. Paid member] · LatestLogin --Timestamp (-) ** NOT NULL ** // Last login date

** SNS cooperation ** ・ Twitter --VARCHAR (15) ** NULL ** ref.7 ・ Facebook --INT (128) ** NULL ** ref.8 [ref.9](https://stackoverflow. com / questions / 7566672 / whats-the-max-length-of-a-facebook-uid) ・ Instagram --VARCHAR (30) ** NULL ** ref.10 ・ LINE --VARCHAR (20) ** NULL ** ref.11

** Maybe there was something like this ** -PrivateInfo1- ?? ** NULL ** // User list that published private images (by myself) -PrivateInfo2- ?? ** NULL ** // User list showing (I) published a private profile · BlockedUser-?? ** NULL ** // List of blocked users ・ FootPrint-?? ** NULL ** // People who have footprints

** Search for hobbies ** ・ Aim --INT (2) ** NOT NULL ** [01. Recruiting friends 02. Recruiting lovers 03. Recruiting marriage partners 04. Sefu r ...] ・ Holiday --INT (2) ** NOT NULL ** [01. Saturdays, Sundays, and holidays 02.Saturdays and Sundays 03.Weekdays 04.Irregular] ・ Academic --INT (2) ** NOT NULL ** [01. Middle 02. High 03. Large 04. Master 05. Doctor] ・ Occupation --INT (2) ** NOT NULL ** [01. Civil servant 02. Freelance 03.IT 04. Medical ...] ref.12 ・ Income --INT (5) ** NULL ** // Annual income (10,000 yen) ・ Smoke --INT (2) ** NOT NULL ** [01. Smoking 02. Smoking cessation 03. Occasionally smoking] ・ Alcohol --INT (2) ** NOT NULL ** [01. Drink daily 02. Drink often 03. Occasionally 04. Rarely 05. Can't drink] ・ Hobby --SET? ENUM? ** NOT NULL ** // Hobbies

Challenges and questions

** Registration of multiple items ** I think that it should be implemented in multiple items, such as [hobbies], [blocklists], and [footprints]. If it's a hobby, block list is a way to register a UUID. Is it okay to use SET type or ENUM type? How do you reflect the person who blocked it? (Extract with SQL → It will be slow if displayed ...)

** About message function ** I don't know how to implement the essential message function ... Save to database ...? I think it's a TEXT type? A new column for each person? With PHP! Even if it comes out by searching, I do not understand much. (I understand even PHP n ←)

1st summary chat

This time, I thought about what I wanted to make and the background database. I heard that if you want to make something like this yourself, your motivation and knowledge will increase. I've never seen it before, so I thought I should try something like this.

It's a little content, but I think I'll continue unless it's banned. For the time being, thank you for reading the first and the end.

Well, there was also an article like this about gender. informativeref.13 … That means that NOT NULL must be minimized! ??

to be continued Reference This is the page that I referred to in the above link. ref.1 5 mistakes that beginners tend to make when working with databases --yakst ref.2 How to start location-based services 5th Let's save location-based services (Part 1) -gihyo ref.3 Let's use MySQL's original ENUM / SET type --itmedia ref.4 SET type --dbonline ref.5 Using UUID with JPA + MySQL --qiita ref.6 What is the optimal varchar length for MySQL email addresses? --teratail ref.7 Maximum number of characters for Twitter user ID --operationservicebu diary ref.8 User Properties --facebook for developers ref.9 What's the max. length of a Facebook uid? - stackoverflow ref.10 Character Limit on Instagram Usernames - stackoverflow ref.11 How many characters can the LINE ID have? --Yahoo Answers ref.12 Occupation list --career garden ref.13 What you need to know before handling "gender" information in the system --qiita

Recommended Posts

[Java] Beginners want to make dating. 1st
Java --How to make JTable
I want to make a list with kotlin and java!
I want to make a function with kotlin and java!
How to make a Java container
Java, arrays to start with beginners
How to make a Java array
Interface Try to make Java problem TypeScript 7-3
How to make a Java calendar Summary
Easy to make Slack Bot in Java
I want to make an ios.android app
I want to stop Java updates altogether
Let's migrate to make Java more comfortable
[Java] I want to make it easier because it is troublesome to input System.out.println.
Run R from Java I want to run rJava
I tried to make Basic authentication with Java
I want to send an email in Java.
I did Java to make (a == 1 && a == 2 && a == 3) always true
Increment behavior Try to make Java problem TypeScript 3-4
I wanted to make (a == 1 && a == 2 && a == 3) true in Java
String operation Try to make Java problem TypeScript 9-3
rsync4j --I want to touch rsync in Java.
[Java] Introduction to Java
I want to write quickly from java to sqlite
Introduction to java
Easy to make LINE BOT with Java Servlet
[Introduction to Java] Basics of java arithmetic (for beginners)
[Java] How to make multiple for loops single
I want to do something like "cls" in Java
[Java] I want to calculate the difference from the date
Initialization of for Try to make Java problem TypeScript 5-4
Java beginners make poker games in 4 days (3rd day)
How to make Java unit tests (JUnit & Mockito & PowerMock)
I want to use ES2015 in Java too! → (´ ・ ω ・ `)
[For beginners] How to operate Stream API after Java 8
[For beginners] Minimum sample to display RecyclerView in Java
I tried to make a login function in Java
Java development for beginners to start from 1-Vol.1-eclipse setup
Introduction to Java for beginners Basic knowledge of Java language ①
Java beginners make poker games in 4 days (2nd day)
App development beginners tried to make an Android calculator app
I want to transition screens with kotlin and java!
When you want to dynamically replace Annotation in Java8
I want to get along with Map [Java beginner]
I used to make nc (netcat) with JAVA normally
Make Blackjack in Java
Changes from Java 8 to Java 11
Sum from Java_1 to 100
[Java] Connect to MySQL
If you want to make a Java application a Docker image, it is convenient to use jib.
How to make shaded-jar
From Java to Ruby !!
[Java] I tried to make a rock-paper-scissors game that beginners can run on the console.
Introduction to java command
[Java] I want to convert a byte array to a hexadecimal number
I want to build Java Applet without using an IDE
[Beginner] Try to make a simple RPG game with Java ①
Java study site summary that you want to read carefully
[# 3 Java] Read this if you want to study Java! ~ Carefully selected ~
I want to make a specific model of ActiveRecord ReadOnly
I just wanted to make a Reactive Property in Java