Afrikaans
Akan
Albanian
Amharic
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bemba
Bengali
Bihari
Bosnian
Breton
Bulgarian
Cambodian
Catalan
Cebuano
Cherokee
Chichewa
Chinese (Simplified)
Chinese (Traditional)
Corsican
Croatian
Czech
Danish
Dutch
English
Esperanto
Estonian
Ewe
Faroese
Filipino
Finnish
French
Frisian
Ga
Galician
Georgian
German
Greek
Guarani
Gujarati
Haitian Creole
Hausa
Hawaiian
Hebrew
Hindi
Hmong
Hungarian
Icelandic
Igbo
Indonesian
Interlingua
Irish
Italian
Japanese
Javanese
Kannada
Kazakh
Kinyarwanda
Kirundi
Kongo
Korean
Krio (Sierra Leone)
Kurdish
Kurdish (Soranî)
Kyrgyz
Laothian
Latin
Latvian
Lingala
Lithuanian
Lozi
Luganda
Luo
Luxembourgish
Macedonian
Malagasy
Malay
Malayalam
Maltese
Maori
Marathi
Mauritian Creole
Moldavian
Mongolian
Myanmar (Burmese)
Montenegrin
Nepali
Nigerian Pidgin
Northern Sotho
Norwegian
Norwegian (Nynorsk)
Occitan
Oriya
Oromo
Pashto
Persian
Polish
Portuguese (Brazil)
Portuguese (Portugal)
Punjabi
Quechua
Romanian
Romansh
Runyakitara
Russian
Samoan
Scots Gaelic
Serbian
Serbo-Croatian
Sesotho
Setswana
Seychellois Creole
Shona
Sindhi
Sinhalese
Slovak
Slovenian
Somali
Spanish (Latin American)
Sundanese
Swahili
Swedish
Tajik
Tamil
Tatar
Telugu
Thai
Tigrinya
Tonga
Tshiluba
Tumbuka
Turkish
Turkmen
Twi
Uighur
Ukrainian
Urdu
Uzbek
Vietnamese
Welsh
Wolof
Xhosa
Yiddish
Yoruba
Zulu
[Music]
hey everybody i'm jordan mathis and i'm
a program manager on the visual studio
for mac team at microsoft and today i'm
going to take you through our new visual
studio 2022 for mac and the latest
preview 3 release that we just put out
so this is our release that now has
support for net 6 c 10
and really big focus on this release for
us is on
updating the ide to have a much more
comfortable feel for developers
presumably like yourselves who like to
work on a mac and so we've focused
heavily on the ui of the ide moving it
to a fully native mac os ui
now if you've been with us for a while
in visual studio for mac the ide has
been a combination of ui technologies
that were native mac os ui
as well as a cross-platform toolkit that
we used to use
and um beyond that that could lead to
some experiences didn't feel quite mac
like certain things like tabs feeling
off or
just little controls it didn't feel
quite right
so this was a big opportunity for us to
go ahead and revisit those and do it
right to get this nice comfortable feel
for being a mac native application and
so along with that it also gave us an
opportunity to go and fix a number of ui
glitches that have been in the ide for a
while
as well as
smooth out the experience for you so a
big thing you'll notice will be this ui
responsiveness things like resizing
windows generally moving around the ide
should feel snappier
so that was a really big goal of the
release as well as getting it to feel
more comfortable for those of you who
are familiar with using say visual
studio from on windows we've got a
number of developers that come in you've
got some history working with visual
studio and we want you to be able to
take the knowledge you may have from the
past to go ahead and bring it into
visual studio for mac and find your ways
around so i have a few things i'll give
you a demo of there of the changes we've
made along those lines
as well as another big thing that we
announced this week is
our future plans for support of the
m1 processor from apple running the ide
natively on m1 processors so this is
apple's arm 64 processor if you weren't
familiar and we're going to do this and
i love this part kind of a geeky detail
of moving the ide to running on top of
net 6 clr the common language runtime
itself which will also bring a number of
improvements to the id for things like
low level performance of our file
operations things like working with file
system watchers that are used across the
ide
so
that combined with our new front end of
the ide
makes for a really good release for us
around these improvements on
long-standing issues we've had with
performance so we've got a blog post
that i put out
that has some details of our findings
working on the m1 support and
what's coming up there soon we don't
have the release ready yet but i'm going
to demo right now but keep an eye out on
our blog going forward to see when that
m1 processor support comes out
so let's go ahead and dive on into the
ide
and today i'm going to take you through
some of those things i just mentioned
the new stuff that we're working on
so here you're looking at the visual
studio
2022 for mac ide and
right away if you've used prior versions
you might notice a few things
our status messaging has moved from the
window title on down to the bottom of
the ide and you'll see this when i do
things like go to run my project which
we'll do right now
status messaging moves down towards the
bottom
the tabs have a more modern mac os feel
as well as a visual studio kind of a
feel to them
and if you weren't familiar with visual
studio for mac there's three major types
of projects you can work on
uh there's this case i'm working on a
dot net
project this was uh this one i believe
is dot net five the ide supports
building apps
for the web and console with dot net
core31 dot net 5 and now.net 6 as well
as building out mobile applications
using the traditional xamarin project
and maui support will be coming soon and
it's not in the build yet but if you're
looking for dot net six and maui support
stay tuned on the blog there'll be
updates after the calendar year to
support that
and then finally if you're game
developer for unity you can go and edit
your scripts in vs for mac and be able
to
edit and debug those in the ide moving
back and forth from unity
that's all supported in this preview
release
so what i'm demoing right now is a
sample application we've had for a bit
that is like an online marketplace and
then here i can add something to my cart
and i was looking at a bug that was
going on in here that we can just
troubleshoot together
this is where if i remove i can remove
an item from my cart by changing the
quantity to zero and i click this update
button
and
it's supposed to go away but it's not
going away
so let's go back to visual studio for
mac and we'll troubleshoot this and see
what's going on there
now right now we're in a debug mode i am
the time being now we're going to stay
in here actually
and i know that the code i want to look
at is in this piece of the application
called the basket service and if i use
the search bar up in the ide i can
search for basket service
in this bar it searches both files
types and members in your code as well
as commands in the ide
menu items in this case i'm going to
pick into the basket service class
and i know that what i want to work on
is a method that's called set quantities
i got this far in my debugging
previously and then had to stop here
so let's go ahead and set a breakpoint
and i'm switching back to the browser
we'll try this action again with the
update button
and then
our breakpoint gets hit
so you can this is just to show that our
native ui is up and running all these
usual features for debugging are here
the ability to come in and work with
your
locals window the watches window
i could explore items in line here and
take a look at this collection
drill into the different items all the
tools you're used to using for debugging
are up and running in this preview
and i can actually see if i look down i
had a note to myself that i just forgot
about was to actually implement this
remove item functionality so i'm going
to stop debugging and we'll just write
some code real quick
so the first thing i need to do i know
that there's this basket
object and i need to call
a
remove empty items method on this so
here's our intellisense list and it lets
me filter through options like members
of the
the types of methods properties
uh if i click on remove empty items i
can just type the semicolon now and it
will auto close the parenthesis because
it's got no parameters to that method
and finish off the line this is a
change that came in i think in the past
few releases just a nice little shortcut
and then there's one more step in here
with this basket repository
where i need to call this update async
method which
takes
that basket as a member of it so you can
see some tooltips popping up here to
show us
ways to work with this code
and
let's save that
so if i had implemented some unit tests
for this piece of the code which i did
not but if i did i could go into our
tests window right now and be able to
take these and run the unit test there's
a test results window that'll come up
um and let me debug that in this case i
did not have unit tests for this which
would have been a good practice so we'll
go ahead and run the project and just
see if it's fixed in the web browser
so one other little item of node in here
while this is running you might have
noticed the menu items in the ide are
different if you've been with us for a
while with visual studio for mac
so this is one of those steps to make it
feel more like visual studio make it
easier to bring what you're familiar
with from visual studio with you into
visual studio for mac so we've got a git
menu now
project build debug have items that you
might be familiar with
from working in uh other visual studio
products
including a quick watch window which has
been a request we've heard from a number
of customers if you were
stopped at a break point now i could
fire up quick watch
okay so now let's double check to see
that this is
fixed for us we'll go in we'll add
another item to the basket
and see if we can go ahead and remove
this
if i drop the account and now i hit
update
yay now our item is fixed and
bug is done so next step would be let's
commit this to source control
so i showed you some of our new menus a
moment ago with the ide
now if we go over here to the get
changes window this is another big new
feature that we're bringing in so in
visual studio there's been a number of
improvements over on windows to the get
experience over the past few years and
so we're beginning to start bringing
these items into visual studio for mac
so the git changes is one of the first
now real big examples of that work
so here i can come in and i could review
changes that have been made
say to this cs proj i could compare it
with
what's up and get kind of see what kind
of what edits have been made
i could
take a look at the history of any
changes made to the file
in this case i've been working in this
one
service for a bit
so let's go find the basket service we
were just working on
and i could take a look at
history of changes that were made to see
when that to do note got left was it
something i forgot did it come somewhere
else
i come through here and browse and get a
summary of changes that were made to
with historic edits to this file
or as a final step i can come and just
take the items that i want say if this
list looks good i want to move the
basket service up i can stage the change
now i could type in a commit message
push it up to the server or pull the
next set down and go from there
so this i mentioned is one of the first
steps in the git tooling we're working
on we're also working toward adding in a
get branch selector so it's not in the
builds you're using yet
but it's another one to keep an eye on
that we will have before we release
uh the plan is to release visual studio
2022 for mac after the
the new calendar year so we're working
on still finish a few finishing details
and i get branch selector will be one of
those
so let's go back to the thirst code for
a moment which is a big area a lot of us
spend our days
and
i want to call your attention to
the light bulbs that were coming out
now you may already be familiar with
the light bulbs but if not let me
explain how these work
so when i'm on a line of code like i am
here
you'll see you may see a light bulb pop
up and this is the ide telling you that
there's a change you should make to your
code either to
meet the code formatting requirements of
your code base or to deal with something
say it's
identified in.net six is like this is a
built-in thing that you should do with
your source code look for the light
bulbs as those strong suggestions to
make changes
there are other types such as a
screwdriver icon that shows up and this
will give you suggestions for
improvements that are maybe nice to have
or you could make them but not a strong
suggestion
in this case if we come back up i'll
click on the light bulb that showed up
and what you're seeing here is our new
quick fix dialog
so we have
changed this up brought back a preview
pane to show you what will happen if you
select on the left side one of these
suggested improvements to your code on
the right side it shows you what that
say refactoring will do to your code
base
and
the
uh one of our themes in the work that
we're doing in the ide is to improve
accessibility and this was one of the
drivers for this new ui we the
previous solution wasn't very accessible
for working through items so while we
revisited making it into a more
accessible ui we also worked on some
improvements for making it easier to
quickly get to a refactoring you want to
apply so for example right now i can hit
option enter
brings up that list i could say that i
actually want to invert the if
i can type a
filter in and then i can just hit enter
and apply that change to my code
so i just mentioned accessibility that
is a another really big piece of the
native mac os ui work that we've got
going on
so
previously there were portions of the ui
that you couldn't really get into well
with apple's built-in accessibility
tools like voice over the text-to-speech
service that they provide
now that we're all native ui everything
can be accessed using those tools
so if i were to come in here to the
system preferences
and go into the accessibility settings
i can start using some options like
voiceover to be able to navigate through
my ide
or i can go in and we actually now have
a new high contrast themes available
both the dark and the light themes of
the ide
so now you've got if we go back and i
actually really like the way this looks
that i almost was thinking making it my
daily color theme these stronger strokes
around borders higher contrast kind of
makes it pop more
and likewise this applies if we go to
light mode
so this is always a
fun easy way to see
that it's a native id
native ui for the ide is i can change
the option now at the system level and
mac and uh visual studio for mac or
respect system settings and adapt to the
light or the dark theme as you choose or
you could choose the auto theme with mac
os which will go light during the
daytime dark at night nighttime
let's change i'm going to go
back to dark and we'll turn back off the
high contrast mode
now let's talk preferences for a moment
and this is where you could go if you
wanted to
actually choose a different
theme for the ide you could go light if
you prefer other apps and
the the os to be light but maybe the os
is a dark theme or you could mix it up
or in this case choose the default which
is auto to adapt to the os settings
but preferences is a fun screen i always
like to go in here on any new app i'm
trying out
it's a fun area to look and see what are
some of the options you might be able to
turn on in the product you're working
with it's also one of the best examples
of our native ui work because this was
one of those places in the ide that
everything was this
other ui toolkit i mentioned so here
all of the controls are now native mac
os ui
there's a full refresh of these screens
so there's more of these screens we're
still working on they aren't all in the
preview 3 release just yet but we're
rolling out more and more of these and
so by the time we hit our
general release next year we'll have all
the preferences brought over as well as
a few sprinklings of some new options as
well that we'll be uh
bringing in over time
so we've just covered a bunch native ui
of the product some new features from
windows like the the get changes window
and
um mention dot net 6
and c sharp 10.
i mentioned earlier but i want to
hit on it again about what's coming soon
with us running the ide on the.net 6
common language runtime so the clr
that
to users of the id will have some nice
improvements for things like
as you work with the file system and
make some changes maybe through git the
ide should be able to be more responsive
and picking those up because we've got a
whole new low level like io stack for
the ide so those are things that are
harder to demo but that you'll see
coming on as we change up this last
lower layer of the ide and get it on.net
yeah clr
one last mention
i mentioned the refactoring a little bit
another kind of fun one in here is with
c sharp 10 in a project there's a few
new refactorings too we'll have more in
our release notes but for example i
could come in here now start converting
my project over to c-sharp
10 and use this new refactoring to
move my namespace to be file scoped
we've got a number of other nice things
like that across the id coming in more
and more refactoring so the list keeps
growing
check our release notes to see more
examples of some of the ones available
in the ide these days
finally i mentioned windowing changes
one other thing coming soon is the
ability to more easily move around your
tool windows
so the build i'm running right now
doesn't have some of this in but we're
working to improve the drag and drop
experience for your tool windows much
like visual studio gives you a spot you
can drop your window and be able to
dock say to get changes on the right
side or the left side of the ide that's
a spot you'll see us improving
and in this build here you're able to
come in and work with document groups so
i could say a new vertical document
group and be able to look at two
documents side by side
move those back and it's another example
of where we're adopting some similar
terminology from visual studio where
there's support for document groups
so with that i'll just leave
with uh some
more information on where to get more
details
we put out a blog post about the preview
3 release highlighting the items i
mentioned here today
and talking a bit about what's next with
running natively on the m1 processor as
well as our git branch selector
you can go out to the blog post download
the release now and if you want to stay
up with us too we're working on a
preview newsletter so you can join in
and just get updates directly from the
team when we put out a new preview
release and what are the new features
we've introduced
uh giving you some opportunities to
provide some more feedback to us things
like those
so please go ahead take a look go check
it out and let us know what you think
anytime go into the ide you can use the
help menu choose report a problem share
you know problems you run into and
yeah we
we've
thrive on your feedback so the more of
that we can get in these early days of
previews the better so in closing uh
again this release will be we'll be
looking at generally available the final
release of 2022 for mac will be after
the new year and
preview 3 available now and look for an
update soon with that m1 native support
so thanks so much for joining me today
hope you
do well and happy coding
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.