1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo thực tập xây dựng ứng dụng điều khiển nhà thông minh trên thiết bị di động

20 15 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 369,43 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Cách xây dựng ứng dụng bằng .NET tương đối dễ dàng và tiện lợi so với các công nghệ khác vì Microsoft đã làm rất tốt phần việc của mình khi giúp cho lập trình viên không còn phải can thi

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO THỰC TẬP

LẬP TRÌNH CAD

Công ty thực tập : TGL Solutions

TP Hồ Chí Minh, tháng 06 năm 2022

Trang 2

LỜI MỞ ĐẦU

Trong thời điểm mà ngành công nghệ thông tin nói chung và phát triển phần mềm nói riêng đang phát triển với tốc độ chưa từng có tiền lệ Nhu cầu cho các sản phẩm phần mềm thuộc nhiều lĩnh vực càng ngày càng tăng

Cùng với sự phát triển của phần mềm thì NET Framework đã trở thành một trong công nghệ được sử dụng rộng rãi trên toàn thế giới Theo số liệu thống kê không chính thức thì số lượng lập trình viên sử dụng ngôn ngữ C# của NET cũng rơi vào khoảng 6 triệu Đây là một sự tăng trưởng cực kỳ nhanh nếu như chúng ta biết rằng NET mới chỉ ra đời được gần 20 năm Điều đấy cũng cho thấy mức độ hấp dẫn của NET đối với lập trình viên lớn như thế nào

.NET framework cùng với hệ sinh thái Microsoft đã phát triển rất nhanh với tất cả các công nghệ có thể giúp lập trình viên xây dựng nên các ứng dụng mất ít thời gian nhất, nó có thể giúp xây dựng từ ứng dụng chạy trên desktop cho đến ứng dụng web và gần đây là cả ứng dụng mobile/tablet Cách xây dựng ứng dụng bằng NET tương đối dễ dàng và tiện lợi so với các công nghệ khác vì Microsoft đã làm rất tốt phần việc của mình khi giúp cho lập trình viên

không còn phải can thiệt và hiểu quá sâu về hệ thống và cách thức hoạt động của NET

Tuy nhiên, để có thể nắm vững và sử dụng hiệu quả NET, tránh những lỗi khó xử lý thì chúng ta cần phải hiểu được kiến trúc của NET cũng như cách thức hoạt động của nó

Sau ba năm học tập trên trường, trải qua rất nhiều đồ án và bài tập liên quan đến NET framework, do mong muốn có thêm kinh nghiệm thực tế, cũng như muốn được làm việc trong một môi trường chuyên nghiệp, em có dự định là sẽ thực tập trong hè Vì vậy, em quyết định chọn TGL-Sol - một môi trường lý tưởng, hiện đại, chuyên nghiệp - là nơi sẽ giúp em thực hiện được dự định này

Trang 3

LỜI CẢM ƠN

Trân trọng gửi lời cảm ơn Công ty TGL-Solutions Việt Nam đã tạo điều kiện cho em có

cơ hội được thực tập tại công ty

Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của nhóm trainer, nhóm thực tập chúng em đã tiếp thu được những kiến thức quan trọng để có thể làm được một product

cụ thể Chân thành cảm ơn các anh chị trong nhóm trainer đã bỏ ra nhiều thời gian, công sức để hướng dẫn chúng em hoàn thành đợt thực tập này

Đặc biệt cảm ơn anh Nghiêm và em Hùng Vỹ, đã training các kiến thức về NET & CAD Api, hướng dẫn, giúp đỡ cho chúng em tận tình cả những khó khăn trong công việc, đến những khó khăn việc làm quen với môi trường mới; cảm ơn anh Phan Trần Minh Trí, đã chỉ dẫn chúng

em về cách làm báo cáo, lên kế hoạch, những kỹ năng không thể thiếu; Cảm ơn toàn bộ team CAD đã luôn tạo điều kiện tốt nhất để em có thể hoàn thành tốt các công việc được giao trong thời gian làm việc tại công ty

Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm bài báo cáo này

Đồng Quang Quý TpHCM, ngày 15 tháng 6 năm 2022

Trang 4

NHẬN XÉT CỦA KHOA

Trang 5

MỤC LỤC

CHƯƠNG 1: Giới thiệu công ty thực tập 7

1 Giới thiệu công ty TGL Solutions 7

2 Các sản phẩm của công ty 7

2.1 Website 7

2.2 App 8

2.3 Hệ thống 9

2.4 Cad business 9

2.5 Công nghệ mới 9

2.6 Bảo trì nâng cấp 10

CHƯƠNG 2: Nội dung thực tập 11

1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 11

2 Nghiên cứu kỹ thuật 11

2.1 Các công cụ làm việc 11

2.2 Tìm hiểu về các phần mềm vẽ kỹ thuật và cách thao tác với chúng thông qua Api 12

2.3 Tìm hiểu ngôn ngữ C# nâng cao 12

2.4 Lập trình command cơ bản với CAD Api và AutoCAD 13

2.5 Tìm hiểu thực hiện AutoTest trên IjCAD 13

3 Thực hiện project 13

4 Lịch làm việc 14

CHƯƠNG 3: Chi tiết về project 18

1 Giới thiệu về dự án 18

1.1 Sự ra đời 18

1.2 Mục tiêu 18

Trang 6

2 Kế hoạch 18 CHƯƠNG 4: Tài liệu tham khảo 19 CHƯƠNG 5: Tổng kết 20

Trang 7

CHƯƠNG 1: Giới thiệu công ty thực tập

1 Giới thiệu công ty TGL Solutions

TGL SOLUTIONS được thành lập năm 2019 tại Hồ Chí Minh, TGL Solutions luôn nỗ lực không ngừng để mở rộng và đa dạng hóa các dịch vụ công nghệ phần mềm, đáp ứng nhu cầu và xu thế phát triển của thị trường Sau 4 năm thành lập TGL từ một start up nhỏ đã vươn mình trở thành một công có quy mô khá lớn và nhận được nhiều phản hồi tốt từ khách hàng

TGL có công ty mẹ là skyAce có trụ sở ở Tokyo và một công ty anh chị là công ty Prima có trụ sở tại Đà Nẵng

2 Các sản phẩm của công ty

2.1. Website

Trang 8

Cung cấp giải pháp hoàn chỉnh từ thiết kế, lập trình và tư vấn tối ưu hóa website Đặc biệt có thể tích hợp các ứng dụng VR/ livestream/ đấu giá bán hàng ngay trên website thương mại để tăng tương tác và hiệu quả kinh doanh của khách hàng.

2.2. App

Bao gồm Smartphone App và PC App Đặc trưng nổi bật của TGL chính là sẵn sàng xây dựng nhanh chóng bản demo trước cho khách hàng phê duyệt Điều này đã giúp chúng tôi luôn cung cấp các giải pháp phát triển app theo đúng yêu cầu chất lượng mong muốn của khách hàng.

Trang 9

2.3. Hệ thống

Các dịch vụ liên quan đến Business system, Ec system, dịch vụ Cloud

migration (chuyển môi trường on-premises qua Cloud(AWS, GCP, Azure), dịch vụ Serverless (sử dụng hệ thống AWS, GCP, Azure)

2.4. Cad business

Ứng dụng ngôn ngữ C++/C# để tạo ra các commands trong bản vẽ thiết kế nhà ở, kiến trúc và cơ khí Tư vấn và hiệu chỉnh các tính năng bản vẽ CAD theo yêu cầu riêng biệt của từng khách hành nhằm tối ưu hóa năng suất và hiệu quả làm việc công ty khách hàng.

2.5. Công nghệ mới

Trang 10

Với lợi thế là đội ngữ nhân sự trẻ, tràn đầy nhiệt huyết và tư duy đầu vào cao, chúng tôi luôn sẵn sàng nghiên cứu và áp dụng các công nghệ mới nhất hiện nay vào phát triển dự án như AI, Machine Learning, VR, Outsystem

2.6. Bảo trì nâng cấp

Thêm chức năng, sửa chữa cho các hệ thống theo yêu cầu của khách hàng.

Tư vấn giải pháp nâng cấp hệ thống web, phần mềm hiện có nhằm tối ưu hiệu suất kinh doanh.

Trang 11

CHƯƠNG 2: Nội dung thực tập

Đợt thực tập nhằm mục đích giúp sinh viên thực tập được đào tạo toàn diện về lập trình

sử dụng kiến thức về NET để tạo ra các command có thể tích hợp chạy trong các phần mềm vẽ

đồ họa, đồng thời rèn luyện những kỹ năng mềm như làm việc nhóm, thuyết trình, giao tiếp Tại công ty, sinh viên có cơ hội được học tập, khám phá và làm việc trong một môi trường phát triển game chuyên nghiệp

1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty

Thời gian: 1 ngày

Nội dung: Giới thiệu về công ty, cách tổ chức của công ty

Được nghe người phụ trách giới thiệu về công ty, quá trình thành lập và phát triển (như

đã nhắc đến ở trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty

Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng email trong công việc…

Kết quả: Hiểu thêm về công ty TGL, quá trình thành lập và phát triển Có thêm các kỹ

năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm hơn

2. Nghiên cứu kỹ thuật

2.1. Các công cụ làm việc

Thời gian: 2 ngày Nội dung: Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc.

Trong thời gian này, thực tập sinh được hướng dẫn tìm hiểu về các công cụ sẽ giúp ích cho trong công việc sau này Một số phần mềm trong số đó như Microsoft

Teams - sử dụng trong làm việc nhóm, Visual Studio - một IDE rất hữu ích và phổ biến với lập trình viên, Source Tree - GUI giúp quản lý source code, Asana - quản lý tiến độ làm việc

Trang 12

Ngoài ta, vì là dự án đặc thù nên lập trình viên phải tìm hiểu thêm về các công cụ

vẽ kỹ thuật liên quan, cụ thể ở đây là AutoCAD và IjCAD

Thực hiện: Thực tập sinh tiến hành tìm hiểu và sử dụng các công cụ đã được nêu

phía trên

Kết quả: Thành thạo các công cụ được sử dụng trong công ty, nắm rõ công cụ nào

được dùng khi nào và cho mục đích gì, đảm bảo quy trình làm việc trơn tru cho công ty

2.2. Tìm hiểu về các phần mềm vẽ kỹ thuật và cách thao tác với chúng thông

qua Api

Thời gian: 5 ngày

Nội dung: Tìm hiểu về 2 phần mềm vẽ kỹ thuật được chỉ định là AutoCAD và

IjCAD Học cách sử dụng 2 phần mềm này để thiết kế thử một số bản vẽ cơ bản

Ngoài ta, còn tìm hiểu CAD Api, các thao tác cơ bản tương tác với các công cụ

vẽ, …

Thực hiện: Thực tập sinh tiến hành tìm hiểu và sử dụng các công cụ đã được nêu

phía trên

Kết quả: Biết cách sử dụng cơ bản của 2 công cụ vẽ kỹ thuật, nắm được nội dung

tài liệu về lập trình command cho CAD

2.3. Tìm hiểu ngôn ngữ C# nâng cao

Thời gian: 5 ngày

Nội dung: Được training về các kỹ thuật C# nâng cao, những kiến thức quan

trọng cần lưu ý về việc lập trình command cho các phần mềm vẽ kỹ thuật

Lập trình hướng đối tượng: Các kiến thức cơ bản về lập trình hướng đối tượng như khái niêm, các đặc tính như tính kế thừa, tính đóng gói, tính ảo hóa, tính đa hình Ngoài ra, thực tập sinh còn được hướng dẫn về cách thiết kế lớp cho các đối tượng cụ thể

Quản lý bộ nhớ: Thực tập sinh sẽ được hướng dẫn về cách cấp phát, quản lý bộ nhớ sao cho tối ưu, tránh rò rỉ bộ nhớ, một trong những phần rất quan trọng trong lập trình, để tối ưu hiệu năng cho sản phẩm mang lại sự hài lòng cho khách hàng

Trang 13

Thực hiện: Tham gia đầy đủ tất cả các buổi training của công ty Nghiêm túc tự

giác tìm hiểu, thực hiện, hoàn thành các bài tập được giao

Kết quả: Nâng cao kỹ năng lập trình với ngôn ngữ C#, có được các kiến thức

quan trọng cho việc lập trình sau này, biết thêm nhiều quy tắc về việc trình bày code cho

dễ đọc, dễ hiểu

2.4. Lập trình command cơ bản với CAD Api và AutoCAD

Thời gian: 5 ngày Nội dung: Được mentor hướng dẫn cách thực hiện 1 task(ở đây là một command

cơ bản – command vẽ vòng tròn circle) Hiểu được cách khai báo các file các thư mục như thế nào cho đúng chuẩn, cách mà một command được gọi và thực thi, biết được một

số thao tác liên quan đến tương tác người dùng và cơ sở dữ liệu trong runntime Được memtor giao cho 1 task bài tập(ở đây là command vẽ tia - ray)

Thực hiện: Chú ý tập trung hiểu được nội dung trình bày, đưa ra thắc mắc khi gặp

phải vấn đề Nghiêm túc thực hiện bài tập được giao theo đúng tiến độ

Kết quả: Nắm được các kỹ thuật để lập trình nên một command chạy trong phần

mềm vẽ kỹ thuật

2.5. Tìm hiểu thực hiện AutoTest trên IjCAD

Thời gian: 5 ngày Nội dung: Được mentor hướng dẫn cách thực hiện một AutoTest cho một

command nào đó cho phần mềm vẽ kỹ thuật IjCad Hiểu được cách một lệnh AutoTest hoạt động, cách nó giả lập hành vi người dùng để tương tác với phần mềm vẽ kỹ thuật dựa theo kịch bản đã lập ra Được mentor giao cho 1 task bài tập thực hiện AutoTest cho command Ray

Thực hiện: Chú ý tập trung hiểu được nội dung trình bày, đưa ra thắc mắc khi

gặp phải vấn đề Nghiêm túc thực hiện bài tập được giao theo đúng tiến độ

Kết quả: Nắm được các kỹ thuật để lập trình nên một lệnh AutoTest có thể thực

hiện được

3 Thực hiện project

Trang 14

Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thực cơ bản về C#, CAD Api Trong tháng thứ hai, trainer đã hướng dẫn thực tập sinh áp dụng những kiến thức đã học để thực hiện các task được giao trong dự án đang được công ty thực hiện

4 Lịch làm việc

Tuần Công việc Người hướng dẫn

Mức độ hoàn thành

Nhận xét của người hướng dẫn

1

- Tìm hiểu về công ty, cách tổ chức của công ty

- Làm quen với các công

cụ làm việc trong công ty

- Học cách trao đổi, làm việc qua email

Chị Lê Bê Ly 100% Nắm rõ quy định của

công ty

2

- Tìm hiểu về các phần mềm vẽ kỹ thuật và thao tác với chúng thông qua CAD Api

Anh Xuân Nghiêm 100% Tìm hiểu nhanh

chóng và biết được cách sử dụng cơ bản của các phần mềm vẽ

kỹ thuật Biết cách giao tiếp với nó thông qua Api

3

- Tìm hiểu ngôn ngữ lập

- trình C# nâng cao

- Thực hành C#

- Làm bài test C#

Anh Xuân Nghiêm 100% Tìm hiểu nhanh

chóng và nắm được các nội dung được truyền đạt, hoàn

Trang 15

thành tốt các bài tập được giao

4

- Tìm hiểu về cách tạo ra

một command cơ bản

- Thực hành tạo ra một

command được giao

Anh Xuân Nghiêm 100% Tìm hiểu nhanh

chóng và nắm được các nội dung được truyền đạt, hoàn thành tốt các bài tập được giao

5

- Tìm hiểu về cách thực

hiện AutoTest cho một

command

- Thực hành viết

AutoTest cho một

command

Anh Xuân Nghiêm 100% Tìm hiểu nhanh

chóng và nắm được các nội dung được truyền đạt, hoàn thành tốt các bài tập được giao

6

- Thực hiện tạo ra

command Ray trên

AutoCad

- Thực hiện tạo ra

command Ray trên

IjCad

- Thực hiện viết

AutoTest cho command

Ray trên IjCad

Anh Minh Trí 100% Hoàn thành đúng tiến

độ

7

- Thực hiện tạo ra

command Base trên

AutoCad

- Thực hiện tạo ra

command Base trên

Anh Minh Trí Hoàn thành đúng tiến

độ

Trang 16

- Thực hiện viết

AutoTest cho command

Base trên IjCad

8

- Thực hiện tạo ra

command Fill trên

AutoCad

- Thực hiện tạo ra

command Fill trên

IjCad

- Thực hiện viết

AutoTest cho command

Fill trên IjCad

Anh Minh Trí Hoàn thành đúng tiến

độ

9

- Thực hiện tạo ra

command Group trên

AutoCad

- Thực hiện tạo ra

command Group trên

IjCad

- Thực hiện viết

AutoTest cho command

Group trên IjCad

Anh Minh Trí Hoàn thành đúng tiến

độ

10

- Thực hiện tạo ra

command HideObjects

trên AutoCad

- Thực hiện tạo ra

command HideObjects

trên IjCad

Anh Minh Trí Hoàn thành đúng tiến

độ

Trang 17

- Thực hiện viết

AutoTest cho command

HideObjects trên IjCad

Trang 18

CHƯƠNG 3: Chi tiết về project

1 Giới thiệu về dự án

1.1 Sự ra đời

Ngày nay yêu cầu vẽ kỹ thuật ngày càng trở nên phổ biến, dễ thấy nhất là trong xây dựng và cơ khí Câu hỏi được đặt ra ở đây là gì, vậy trên thị trường, ngoài AutoCad ra thì còn được bao nhiêu phần mềm có thể đáp ứng được đầy đủ các tác vụ mà các kỹ sư cần có để thực hiện xây dựng nên bản vẽ kỹ thuật, thứ 2 là liệu sau này việc các công ty phát triển nên các phần mềm vẽ kỹ thuật khác cho các lĩnh vực khác liệu có dễ dàng hay không hay vẫn phải phụ thuộc vào AutoCad

để phát triển nên.

Sứ mệnh của công ty là tạo ra một sản phẩm mà ở đó có thể cung cấp một

bộ khung hoàn chỉnh cho các phần mềm vẽ kỹ thuật, cung cấp hầu như là đầy đủ các lệnh vẽ cơ bản hiện nay, ngoài ra còn có nhiều document và các phương thức

để các công ty sau này khi mua lại có thể dễ đàng phát triển theo lĩnh vực mà mình mong muốn Xóa bỏ đi vị thế độc tôn của AutoCad khi mà license của nó cũng không phải là rẻ.

1.2 Mục tiêu

Trong vòng 5 năm, đội ngũ phát triển cần phải hoàn thành sản phẩm với chất lượng tốt nhất để có thể đưa ra thị trường thương mại hóa, bước sang giai đoạn bảo trì.

2 Kế hoạch

Để thực hiện dự án, công ty chia team CAD thành nhiều team đảm nhận nhiều mảng khác nhau của dự án, có thể nêu lên 2 mảng chính thứ nhất là xây dựng khung vẽ và thứ 2 là xây dựng các command Ở đây vì được ứng tuyển vào

Trang 19

nhóm thực hiện command nên em chỉ đề cập đến kế hoạch làm việc ở team làm command.

Trong quá trình phát triển phần mềm, mỗi năm, bên phía công ty mẹ sẽ đưa

ra một danh sách các command cần được thực hiện trong năm Việc của team là phân loại các command theo độ khó, ước lượng thời gian và phân chia cho các thành viên thực hiện.

Một command được coi như là hoàn thành nếu đã trải qua các giai đoạn:

 Thực hiện trên AutoCAD

 Thực hiện trên IjCAD

 Self-check

 Cross-review

 Bàn giao cho tetster và fix bug nếu có

 Thực hiện AutoTest trên IjCad

 Project lead review

CHƯƠNG 4: Tài liệu tham khảo

 For TGL: https://tgl-sol.com/

 For C#: https://www.w3schools.com/cs/index.php

 For Net: https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-6.0

 For AutoCad: https://knowledge.autodesk.com/support/autocad/learn

 For IjCad: https://www.ijcad.jp/

Ngày đăng: 16/06/2022, 21:15

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w